Как мне сопоставить все после первого слова? - PullRequest
0 голосов
/ 01 мая 2019

Итак, я всего лишь регулярное выражение n00b, и у меня есть электронная таблица Google со столбцом, содержащим имена.

Я выяснил, как сопоставить первое слово, поэтому мне удалось создать столбец, содержащий только первые имена.

Теперь я хочу столбец, который содержит отчество и фамилию (вместе).Поэтому я решил, что мне нужен код регулярного выражения, чтобы соответствовать всему после первого слова.Кто-нибудь может мне помочь?

1 Ответ

0 голосов
/ 01 мая 2019

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

(?P<firstName>^\w+)\s(?P<middleAndLast>.+)

пример ; Который будет захватывать имя, а затем вторая группа будет просто все после. Если столбец в вашем наборе данных содержит больше текста, мы можем сделать его более сложным.

Для пример вы можете добавить описания как для отчества, так и для фамилии с необязательным прогнозом отчества для среднего имени (?=...) для средней группы, если у кого-то нет отчества. Это будет проверять отчество или просто захватить фамилию. Вы можете удалить $, если фамилия не является концом всей строки.

который будет выглядеть примерно так:
(?P<firstName>^\w+)\s((?P<middle>[\w\.]+)(?=\s\w))?(\s?(?P<Last>\w+))$

Вот пример ruby ​​, который захватывает имя, а затем все пробелы и символы после него.

Для листов Google должно работать что-то вроде следующего:
=REGEXEXTRACT(F3,"(^\w+)\s(\w.*)")

Полезный ресурс здесь и здесь

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