0

我想仅选择 3 个示例中的人名并排除这部分:Nom : MrNom : Mme

Nom :   Mr Name Surname
Nom :   Mr Name1 Name2 Surname
Nom :   Mme Name Surname
Nom :   Mme Name1 Name2 Surname

我将 Regex 与生成器一起使用:http: //gskinner.com/RegExr/ 我将使用它与我尝试过的 PHP

(?<=Nom :)(.*)

但它没有提供任何帮助,因为它包括我想排除任何帮助的 Mr 或 Mme?

4

2 回答 2

1

这应该这样做。

Nom\s+:\s+M(?:r|me)\s+(.*)

或者你可以做..

(?<=Nom :)\s+M(?:r|me)\s+(.*)

或者让它更短

M(?:r|me)\s+(.*)$
于 2013-09-14T01:49:24.907 回答
0

This regex matches the target input:

((?<=Nom :   Mr )|(?<=Nom :   Mme )).*$

See a live demo working with your examples.

The main difference with this regex over the other answer is that the entire match (not just group 1 or whatever) is your target input.

于 2013-09-14T01:44:17.143 回答