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


Автор: nak 14.6.2010, 15:30
Выражение:
(?i)((^[aeiou])|(\s+[aeiou]))\w+?[aeiou]\b


"Arline ate eight apples and one orange while Anita hadn't any"

Не могу понять каким будет результат.

Автор: Самозванка 14.6.2010, 21:51
Всего совпадений 4

1 : ate
1.1 : a
1.2 : 
1.3 : a

--------------------------------------------------------------------------------
2 : one
2.1 : o
2.2 : 
2.3 : o

--------------------------------------------------------------------------------
3 : orange
3.1 : o
3.2 : 
3.3 : o

--------------------------------------------------------------------------------
4 : Anita
4.1 : A
4.2 : 
4.3 : A


Удобный сервис - http://www.regexpr.ru/?pattern=%7E%28%3Fi%29%28%28%5E%5Baeiou%5D%29%7C%28%5Cs%2B%5Baeiou%5D%29%29%5Cw%2B%3F%5Baeiou%5D%5Cb%7E&subject=%22Arline+ate+eight+apples+and+one+orange+while+Anita+hadn%27t+any%22 или http://gskinner.com/RegExr/

Автор: aleksandy 15.6.2010, 05:35
Цитата(Самозванка @  14.6.2010,  21:51 Найти цитируемый пост)
Всего совпадений 4

Вообще-то 5, т.к. "Arline" тоже подходит под выражение.

Автор: nak 21.6.2010, 19:31
А что значит ?i

Добавлено через 3 минуты и 19 секунд
Ещё вопрос как это можно программно реализовать? Может кто может программу написать?

Автор: jk1 21.6.2010, 19:48
Цитата

А что значит ?i

Это значит что разбор будет регистронезависимым.
Цитата

Может кто может программу написать? 

http://java.sun.com/docs/books/tutorial/essential/regex/test_harness.html

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