[英]What is a regex expression that can prune down repeating identical characters down to a maximum of two repeats?
[英]What characters can't a regex expression start with?
我正在編寫一個簡短的腳本,該腳本將使用字符串作為正則表達式或字典鍵。 不過,我想將所有這些數據保留在字符串中,而無需在另一個變量中指定它是兩個變量中的哪個。
我決定使用字符串的第一個字符來指定它是正則表達式還是字典鍵。 因為我認為不可能以?
開始正則表達式?
,我用過。
tests = (
r'\d+',
'?test'
)
values = {
"test": "Success!"
}
for test in tests:
if test.startswith('?'):
print(values.get(test[1:]))
else:
print(re.match(test, '123').string)
我假設正則表達式可能永遠不會以?
開頭?
字符? 還有哪些其他字符(出現在QWERTY鍵盤上)永遠無法啟動正則表達式?
在這里,任何重復字符( ?
, *
, +
)都是一個不錯的選擇,因為必須在它們前面加上其他模式。 $
只能在不重要的正則表達式的末尾使用,因此它也是一個不錯的選擇。 }
, ]
和)
必須遵循它們的開頭等效項,因此也可以使用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.