2017-12-27 2075 views
-5

我需要這個正則表達式轉換爲Python語言:翻譯正則表達式的Python

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

我有一個包含的人與/人的標籤,並沒有那麼換句話說名.txt文件標籤。

Leo/PERSON Messi/PERSON hello 

一旦你做出了相當的程序在python上述正則表達式,輸出必須是這個(標籤/人所有的名字,其他的話都沒有):

Leo/PERSON Messi/PERSON 
+1

您可以在你的問題,你在Python擁有的代碼? –

+0

什麼阻止你做翻譯?我知道這聽起來像是一個陳詞濫調,但你的問題沒有表明你的努力。 SO並不打算成爲一個免費的編碼服務,您可以發佈請求,並且人們會爲您做。我們需要你嘗試一下。首先回顧一下實現Python正則表達式引擎的[re module](https://docs.python.org/3/library/re.html)的Python文檔。正如在這個問題上的其他評論和回答所顯示的,*有時*人們會善意地做到這一點,但你不應該期待它。 – skrrgwasme

+0

'(?:[a-zA-Z。] */PERSON(?:\ s | $))+'?花了我2分鐘。查看https://regex101.com/ – ctwheels

回答

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 '