2013-07-01 2 views
0

Я новичок в регулярном выражении, и мне сложно фильтровать слова с диапазоном длин от 5-7. Так вот примерРегулярное выражение для совпадения слов с диапазонами длин

У меня есть список слов, где слова разделяются пробелами

house computer method position regex avocado 

Теперь, скажем, я хочу только слова с длиной 5, 6 и 7. регулярное выражение, которое я я искал бы что-нибудь другое.

Если бы я заменил матчи ничем, я бы ожидал этого вывода.

house method regex avocado 

Спасибо. :)

E:

Я использую этот сайт: http://gskinner.com/RegExr/

+1

Укажите двигатель регулярного выражения или язык программирования, который вы используете в соответствии с выдержкой тега. –

ответ

4

Вы можете использовать {n,m} квантор, с границами слова:

\b\w{5,7}\b 

Это будет соответствовать "слово" от 5 до 7 буквенно-цифровых символов.

+0

@TimPietzcker. Упс. Забыл границу слова. –

+0

вам нужна граница слова, иначе она будет соответствовать 'aaaaaaaaaaaaaaaaaa' тоже – Kent

+0

ну, мне нужно противоположное. Мне нужно сопоставить что-нибудь еще :) – chrs

2

Вы можете использовать регулярное выражение:

\b(\w{1,4}|\w{8,})\b 

И заменить ничем.

Посмотрите, как это работает here

После этого, вы можете очистить, удалив все завершающую и двойные пространства остались позади.

+0

точно :) спасибо. lol "вы можете принять за 5 минут" – chrs

+0

Добро пожаловать @Chrene :) – Jerry

+1

Установка моего секундомера – chrs

Смежные вопросы