簡體   English   中英

RegEx:在引號內捕獲單詞

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM