将正则表达式转换为python

时间:2017-12-27 19:16:55

标签: python regex

我需要将这个正则表达式翻译成python语言:

(([[:alpha:]]|\.)*/PERSON([[:space:]]|$))+

我有一个.txt文件,其中包含带有/ PERSON标记的人的姓名和其他没有标记的单词。

Leo/PERSON Messi/PERSON hello

一旦你在python中使用上面的正则表达式的等效程序,输出必须是这个(所有名称带有标签/ PERSON,其他单词不是):

Leo/PERSON Messi/PERSON

1 个答案:

答案 0 :(得分:0)

您可以使用正则表达式:

(?:[A-Za-z.]*/PERSON\s*)+
  • [A-Za-z.]*匹配[A-Za-z.]

  • 的零个或多个
  • /PERSON\s*匹配/PERSON后跟零个或多个空格

  • 以上内容放在未捕获的群组中,并通过+令牌将该群组匹配一次或多次。

示例:

In [9]: re.search(r'(?:[A-Za-z.]*/PERSON\s*)+', 'Leo/PERSON Messi/PERSON hello').group()
Out[9]: 'Leo/PERSON Messi/PERSON '