簡體   English   中英

Python 不一致讀取正則表達式文件

[英]Python inconsistencies reading regex file

我有一個正在閱讀和編譯的正則表達式文件。 我遇到的問題是正則表達式有時會導致\\

Z\\d*\\.file_\\.?

代替

Z\d*\.file_\.?

它有時匹配,但有時不匹配。

當您使用原始字符串和雙反斜杠時,它很可能不匹配。

s = "ABC 23"

re.findall('\d+',s)
['23']

re.findall(r'\d+',s)

['23']

re.findall('\\d+',s)
['23']

re.findall(r'\\d+',s)     

[]

我不知道這是否是你想要的,但如果你閱讀了正則表達式操作的文檔

它說 :

“正則表達式使用反斜杠字符 ('\\') 來表示特殊形式或允許使用特殊字符而不調用它們的特殊含義”

並且 :

“解決方案是對正則表達式模式使用 Python 的原始字符串表示法;在以 'r' 為前綴的字符串文字中,不會以任何特殊方式處理反斜杠”

例子:

regex= re.compile(r'string')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

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