Регулярные выражения: знак фунта в начале слова - PullRequest
2 голосов
/ 12 декабря 2011

Я пытаюсь найти слова, начинающиеся со знака фунта. Javascript.

"test #word no#luck".replace( /\b#([\w]+)\b/g, "<#$1>" );

все же слово граница не относится к знаку #. выводит:

test #word no<#luck>

также я немного сбит с толку, что мне нужно снова добавить знак # в шаблон замены "<# $ 1>", так как алгоритм, похоже, удаляет его в процессе.

Ответы [ 2 ]

0 голосов
/ 12 декабря 2011

Вот как бы я это сделал:

result = subject.replace(/(^|\s)(#\w+)\b/g, "$1<$2>");
0 голосов
/ 12 декабря 2011

Попробуйте это:

result = subject.replace(/(?:^|\s)(#\w+)(?:\s|$)/g, "<$1>");

\b будет работать только с \w

...