регулярное выражение справки с границами слова (нужно исключение) - PullRequest
1 голос
/ 19 июня 2010

с учетом этого текста:

hello-world

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

hello\-.+?\b

Подвох, если у меня есть это:

hello-world-howyadoing

этот второй тире считается границей слова, поэтому совпадение заканчивается на 'world'

Как мне сказать «остановитесь на следующей границе слова, если только слово не является чертой» в регулярном выражении?

Это в формате .js, кстати.

Ответы [ 2 ]

3 голосов
/ 19 июня 2010

Я не выполнял регулярные выражения JS, но я почти уверен, что подчеркивания на самом деле также включены в слова, поэтому правильный набор будет также включать _ (я не знаю, нужно ли подчеркивать вJS)

hello\-[a-zA-Z0-9\-_]*

2 голосов
/ 19 июня 2010

Это зависит от того, что вы делаете, но вы можете просто указать список границ слов, которые вас интересуют

hello\-[a-zA-Z0-9\-]*

Мог бы выполнить то, что вы хотите

...