Извлечение всех имен из многострочной строки

Я пытался получить все имена (с фамилиями) из многострочной строки плюс тело сообщения, но каким-то образом он выбирает только одно имя.

Пример:

Привет Марк, Стефани Эл, Пол

Поздравляю с новой работой!

Я надеюсь, что вы чувствуете себя лучше этим утром!

Регулярное выражение, которое я использую:

/(?<=^hi )(\W*(\w+ *\w*)+)*/gmi

Насколько я понимаю, группа с 1-й подписью должна постоянно находить как можно больше имен, но это не работает!

Какую ошибку я совершил с этим регулярным выражением?

Заранее спасибо.

1

Решение

Не уверен, почему вы отметили PCREНо вот как это можно сделать:

(?:\G(?!\A)|Hi\s*)
(?P<name>[A-Z][^,\n\r]+)
(?:,\h)?

Увидеть демо на regex101.com.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector