鑒于此正文:
First Citizen:
Before we proceed any further, hear me speak.
What authority surfeits on would relieve us:
Speak, speak.
ALL:
You are all resolved rather to die than to famish?
我想匹配:
['First Citizen', 'ALL']
我最初嘗試過這樣的事情,r'([\w -:]*:)'但想將其限制為只有 2 個單詞的行。
規格:
- 行以 :
- 一行只有兩個字或更少
- 匹配那一兩個詞
uj5u.com熱心網友回復:
任何單詞:\w
任意兩個單詞(帶空格):\w \s\w
任意兩個或更少的詞(假設一個,而不是零):\w (?:\s\w )?
單獨一行中的任意兩個或更少的單詞:^\w (?:\s\w )?$
以“:”結尾的任何兩個或更少的單詞:^\w (?:\s\w )?:$
(Python)代碼中的結果:
import re
text = """
First Citizen:
Before we proceed any further, hear me speak.
What authority surfeits on would relieve us:
Speak, speak.
ALL:
You are all resolved rather to die than to famish?
"""
for match in re.findall(r"^\w (?:\s\w )?:$", text, re.MULTILINE):
print(match)
輸出:
First Citizen:
ALL:
您沒有指定語言,因此您的語言可能需要一個或兩個引數來以正確的方式處理正則運算式。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/432355.html
標籤:正则表达式
下一篇:在我的正則運算式中解決災難性回溯
