2017-02-09 208 views
0

如何在正則表達式python中的某個字符之後提取某個單詞?使用正則表達式從一個字符串中提取字符python

例如: 給出= 'ABCDEFGHIJKL 「MNOP:」 qfdf 「GG」'

我想qfdf這是AFER 「MNOP:」 和 「GG」 之前。給定的字符串是一個字符串,不包含空格。

到目前爲止,我可以用\ w +「mnop:」來獲得qfdf「gg」,但我不知道python正則表達式中的任何\ K函數。我也知道使用(?< = ...),但這隻需要固定寬度的字符。

謝謝!

+0

你嘗試過什麼? http://regexr.com/是你的朋友。 – codeforester

+0

@codeforester是regexr.com for python?我認爲這是爲js .. –

回答

0

槓桿lookarounds:

(?<="mnop:")[^"]+(?="gg") 
  • 零寬度正回顧後,(?<="mnop:"),可以確保所希望的部分是通過"mnop"

  • [^"]+匹配一個或多個字符不屬於"

    前面
  • 零寬度正值前瞻,(?="gg"),確保所需的匹配之後"gg"

例子:

In [6]: given = 'abcdefghijkl"mnop:"qfdf"gg"' 

In [7]: re.search(r'(?<="mnop:")[^"]+(?="gg")', given).group() 
Out[7]: 'qfdf' 
相關問題