Как найти последовательные хэштеги - PullRequest
0 голосов
/ 26 сентября 2018

У меня есть строка:

"hello #a and #b welcome #b #c #d and #e #f or #k"

Мне нужны последовательности из нескольких последовательных хэштегов.Я хочу вывод:

"#b #c #d", "#e #f"

Я использовал следующее регулярное выражение:

/#\w+\s*(#\w+\s*)+(#\w+)*/

, но оно не работает.

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

Вы можете удалить последнюю группу захвата и сделать второй последний группой без захвата.Но тогда вы также сопоставите конечный пробел.

Если вы не хотите использовать конечный пробел, вы можете использовать: #\w+(?:\s+#\w+)+

Regex demo

Если вы также хотите сопоставить хэш-теги без нуля или более, чем символ пробела, вы можете использовать \s* вместо \s+

0 голосов
/ 26 сентября 2018

это то, что вы хотите?

((#\w+\s+){2,})

группа 1 имеет результат.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...