由於正規表示式通常包含反斜槓等特殊字元,所以我們最好使用原始字串來表示他們。
什麼是原始字串?
python正規表示式前的 r 表示原生字串,該字串宣告了引號中的內容表示該內容的原始含義,避免了多次轉義造成的反斜槓困擾。
(1)>>> import re
>>> re.match('\d',"3")
<_sre.sre_match object; span=(0, 1), match='3'>
>>> re.match(r'\d',"3")
<_sre.sre_match object; span=(0, 1), match='3'>
(2)\不轉意
>>> re.match(r'\\d',"3")
>>> re.match('\\d',"3")
<_sre.sre_match object; span=(0, 1), match='3'>
(3)>>> re.match(r'\',"3")
file "", line 1
re.match(r'\',"3")
^syntaxerror: eol while scanning string literal
>>> re.match(r'\\',"\\")
<_sre.sre_match object; span=(0, 1), match='\\'>
(4)>>> print("\")
file "", line 1
print("\")
^syntaxerror: eol while scanning string literal
>>> print("\\")
\(5)
>>> re.match('\\\\',"\\")
<_sre.sre_match object; span=(0, 1), match='\\'>
>>> re.match(r"abc","abcdefg")
<_sre.sre_match object; span=(0, 3), match='abc'>
正規表示式 轉
字元 描述 將下乙個字元標記為乙個特殊字元 或乙個原義字元 或乙個向後引用 或乙個八進位制轉義符。例如,n 匹配字元 n n 匹配乙個換行符。序列 匹配 而 則匹配 匹配輸入字串的開始位置。如果設定了regexp物件的multiline屬性,也匹配 n 或 r 之後的位置。匹配輸入字串的結束位置。如...
vim正規表示式(轉 )
vim中的正規表示式功能很強大,如果能自由運用,則可以完成很多難以想象的操作。如果你比較熟悉perl的正規表示式,可以直接參照與perl正規表示式的區別一節。使用正規表示式的命令最常見的就是 搜尋 命令。其格式如下 正規表示式另乙個很有用的命令就是 s 替換 命令,將第乙個 之間的正規表示式替換成第...
正規表示式轉NFA
最近一直在忙著寫大作業,考試複習,複習演算法的時候寫了一些隨筆,現在忙起來都落下了部落格,這裡有乙個vc 寫的大作業,主要是正規表示式轉nfa並顯示。內容如下。介紹一下nfa在表示的結構設計,由於nfa本身是一種有向圖,所以這裡的儲存結構設計和鄰接表相似,圖中的每個節點後面是一些與其連線的節點的值,...