Я пытался (честно пытался) разобраться с регулярными выражениями, но пока чето невтюхаю... Правила вроде понятны, а вот составить регулярку чтобы работало - Проблемма. Короче трабла простая: надо из строчки вырвать все слова, (язык неопределен, но явно наверно русский и/или английский). Метод разделения слов любой, от запятой до кучи пробеллов. Моя идея была выделять както символы между пробелами но идея рухнала на парсинге теста "фи фи , , ц3 23 ыфыы" тобишь идея понятна? очевидно первое и последнее слово ненайдется, запятые и пустые строки еще будут... ц3 - вроде слово... так вот. КАК это сделать посоветуйте. И еще киньте ссылку по такому мануалу на регулярки чтобы даже умственно отсталый понял, я уже незнаю что читать чтобы понять это... Извините за тупость.
Тебе надо что то вроде этого..... Код (Text): <?PHP $data = 'Я пытался (честно пытался) разобраться с регулярными выражениями, но пока чето невтюхаю... Правила вроде понятны, а вот составить регулярку чтобы работало - Проблемма. Короче трабла простая: надо из строчки вырвать все слова, (язык неопределен, но явно наверно русский и/или английский). Метод разделения слов любой, от запятой до кучи пробеллов. Моя идея была выделять както символы между пробелами но идея рухнала на парсинге теста "фи фи , , ц3 23 ыфыы" тобишь идея понятна? очевидно первое и последнее слово ненайдется, запятые и пустые строки еще будут... ц3 - вроде слово... так вот. КАК это сделать посоветуйте. И еще киньте ссылку по такому мануалу на регулярки чтобы даже умственно отсталый понял, я уже незнаю что читать чтобы понять это... Извините за тупость.'; echo '<pre>'; print_r (preg_split("/[\s,;\.:-]+/", $data)); echo '</pre>'; ?>
ТО!! пасяб. а я вчера мутил какуюто другую функци... ща скажу какую... preg-match-all. неполучалось немного, плохо у меня это идет.. Кста поясни немного \s - пробел, \. - точка вроде понял.. а если... пасяб.. Всмысле если захочу если че добавить то добавлять в квадратные эти скобки... все понял...
\s - пробел либо табуляция . – любой символ (в символьном классе (квадратных скобках) точка – литерал)
стоп.. а как тады добавить кавычки?? Горбунов Олег ты то сам тестил?? там выдается "фи.. \"\' вроде, но чет не пашет.... писец как плохо когда на компе не стоит апатча, а сервак тупой...
Это я туплю или как?? почему выводится только "Array" Код (Text): <?PHP function my_split($str) { return preg_split("/[\s,;\.:-]+/", $str); } $data = 'Я пытался (честно пытался) разобраться с регулярными выражениями, но пока чето невтюхаю... Правила вроде понятны, а вот составить регулярку чтобы работало - Проблемма. Короче трабла простая: надо из строчки вырвать все слова, (язык неопределен, но явно наверно русский и/или английский). Метод разделения слов любой, от запятой до кучи пробеллов. Моя идея была выделять както символы между пробелами но идея рухнала на парсинге теста "фи фи , , ц3 23 ыфыы" тобишь идея понятна? очевидно первое и последнее слово ненайдется, запятые и пустые строки еще будут... ц3 - вроде слово... так вот. КАК это сделать посоветуйте. И еще киньте ссылку по такому мануалу на регулярки чтобы даже умственно отсталый понял, я уже незнаю что читать чтобы понять это... Извините за тупость.'; echo '<pre>'; $res = array(my_split($data)); foreach ($res as $val) echo "$val \n"; echo '</pre>'; ?> мне надо чтобы функция вернула массив слов... а чето тупит.... писец я тупой.... Сори братва нашел ошибку... (она в строчке $res = array(my_split($data)); ) убрал array и все запахало.
нет... ща стану злым... я про то что (цитата) "В тех случая, когда нужно сопоставить выражение со строкой, в которой встречаются спецсимволы <бла бла бла>, надо поставить знак \." КОроче я и пишу \"\' а мне выдается Warning: preg_split(): Compilation failed: range out of order in character class at offset 9 in /home/ussuriin/public_html/wedis/tmp11.php on line 5 Warning: Invalid argument supplied for foreach() in /home/ussuriin/public_html/wedis/tmp11.php on line 19 я пишу на ПХП мало и еще толком не понимаю что это значит. ХЕЛП.... я вроде все по книжке делаю... ( return preg_split("/[\s,;\.:-\"\']+/", $str); )
кажется работает, все зависело от знака - странно. ну да ладно ща осталось вставить туда только / и будет работать. как надо.. Пасибо всем.... (правда / еще не пашет. но я надеюсь справлюсь сам) Theme closed. Все сделано
PHP: <?PHP $data = 'Я пытался (честно пытался) разобраться с регулярными выражениями, но пока чето невтюхаю... Правила вроде понятны, а вот составить регулярку чтобы работало - Проблемма. Короче трабла простая: надо из строчки вырвать все слова, (язык неопределен, но явно наверно русский и/или английский). Метод разделения слов любой, от запятой до кучи пробеллов. Моя идея была выделять както символы между пробелами но идея рухнала на парсинге теста "фи фи , , ц3 23 ыфыы" тобишь идея понятна? очевидно первое и последнее слово ненайдется, запятые и пустые строки еще будут... ц3 - вроде слово... так вот. КАК это сделать посоветуйте. И еще киньте ссылку по такому мануалу на регулярки чтобы даже умственно отсталый понял, я уже незнаю что читать чтобы понять это... Извините за тупость.'; echo '<pre>'; print_r (preg_split('/[\s,;\.\"\'\(\)\?!:-]+/', $data)); echo '</pre>'; ?> Все работает....