Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Помогите составить регулярное выражение


Автор: name 12.2.2012, 18:34
Здравствуйте. Нужно выдрать из выражения слова, разделенные пробелом. Например:
из "вода трава автобус" должно получиться:
array[0]=вода
array[1]=трава 
array[2]=автобус

Спасибо

Автор: $дмитрий 12.2.2012, 19:42
Не проверял, но должно работать
Код

#\b(.*?)\b#

Автор: name 12.2.2012, 20:06
спасибо. решил вопрос функцией explode

Автор: $дмитрий 12.2.2012, 20:14
А знаки препинания разве не нужно учитывать?

Выкладываю проверенное решение
Код

print_r(preg_split('#[^\p{L}\p{N}\']+#u', 'Здравствуйте. Нужно выдрать из выражения слова, разделенные пробелом'));

Автор: ksnk 12.2.2012, 21:14
Цитата($дмитрий @  12.2.2012,  20:14 Найти цитируемый пост)
А знаки препинания разве не нужно учитывать?


Цитата($дмитрий @  12.2.2012,  20:14 Найти цитируемый пост)
Нужно выдрать из выражения слова, разделенные пробелом

Нет!  smile 
Цитата

Респу́блика Кот-д’Ивуа́р (фр. République de Côte d'Ivoire [ʁepyˈblik də kot diˈvwaʀ]; до 1986 года название официально переводилось на русский язык как Республика Бе́рег Слоно́вой Ко́сти)

Автор: $дмитрий 12.2.2012, 21:32
Цитата

République de Côte d'Ivoire [ʁepyˈblik də kot diˈvwaʀ]

Ха, мой любимый PHPEE впал в депрессию от такой строки smile

Если нужно разбирать такое черезжопие, то да, нужно через explode+самостоятельная отчистка знаков

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)