Автор Гілка: Вибрати кириличне слово безЦифр, знаків пунктуації, спецсимолів,дефісів,пробілів  (Прочитано 7294 раз)

gdekjifgb

  • Гість
Дано:
табличка
| 495883 | by all manner of means |
| 495884 | by all means           |
| 495885 | by all odds            |
| 495886 | by an ace              |
| 495887 | by an iota             |
| 495888 | by and by              |
| 495889 | by and large           |
| 495890 | by any chance          |
| 495891 | by any manner of means |
| 495892 | by any means           |
+--------+------------------------+
...
|   94950 | яростных                                                    |
|    1599 | ярь-медянка                                                 |
|    1600 | ястреб-перепелятник                                         |
|    1601 | ястреб-тетеревятник                                         |
|   94999 | яфетический                                                 |
|    1603 | яхт-клуб                                                    |
|    1604 | яхт-клуба                                                   |
...
|    1938 | яванский желоб                                              |
|    1939 | яванское море                                               |
|   94690 | еще какое-то слово                                          |
|    1940 | яде-бузен залив                                             |
|   94751 | ядерного                                                    |
|   94755 | раз два-три       


Потрібно вибрати рядки із словами по такому регекспу '^[а-я]+[а-я]$+'

В наведеному вище прикладі  такій умові відповідають слова яростных яфетический ядерного

Із англійськими літерами все в порядку.
select * from bpsw where badpsw regexp '^[a-z]+[a-z]$+';а з кирилецею проблеми.

Це потрібно зробити за допомогою mysql.
« Змінено: 2017-12-20 14:49:45 від gdekjifgb »

Відсутній Re.

  • Загальний модератор
  • Літератор
  • *****
  • дописів: 1898
  • Карма: +1/-0
Стандартна проблема з кодування і сортуванням, гугліть: mysql + collation + regexp.

Я з mysql рідко працюю, але нашвидкуруч я б так написав:
select * from bpsw where badpsw regexp '^[абвгдеёжзийклмнопрстуфхцчшщъыьэюя]+$';

gdekjifgb

  • Гість
 [smiley=am.gif] [smiley=angry2.gif] ска., бл..

Працює.  А я хотів на php видаляти ці рядки.

Але потрібно детальніше розібратись, поекспериментувати.