[英]RegEx : Capturing words within Quotation mark
我有一段這樣的文字:
約翰出去散步了。 他遇到了愛德華茲夫人,並說:“您好,媽媽,您今天好嗎?”。 她回答:“我很好。 你好嗎?'。
我想用單引號引起來。 我嘗試過這個正則表達式
re.findall(r"(?<=([']\b))((?=(\\?))\2.)*?(?=\1))",string)
(來自這個問題: RegEx:在引號之間獲取值 )
它僅返回單引號作為輸出。 我不知道出了什么問題有人可以幫助我嗎?
Python要求捕獲組必須完全關閉,然后才能對該組進行任何反向引用( \\2
)。
您可以使用正向lookbehind (?<=[\\s,.])
和正向lookahead (?=[\\s,.])
零長度斷言來匹配單引號內的單詞,包括諸如I'm
單詞,即:
re.findall(r"(?<=[\s,.])'.*?'(?=[\s,.])", string)
Full match 56-92 'Hello Mam how are you doing today?'
Full match 106-130 'I'm fine. How are you?'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.