一、[\b] 匹配轉義字符\b自己,匹配退格鍵 \u0008 python
print(re.sub(re.compile(r"[\b]", re.S), "|", "That \bdang-to_ot_in' \b#!@\b#$ var\bmint's cost me $199.95!"))
運行結果:That |dang-to_ot_in' |#!@|#$ var|mint's cost me $199.95!code
二、\b 匹配字母或數字邊界blog
MSDN:匹配必須出如今 \w
(字母數字)和 \W
(非字母數字)字符之間的邊界上class
print(re.sub(re.compile(r"\b", re.S), "|", "That \bdang-to_ot_in' \b#!@\b#$ var\bmint's cost me $199.95!"))
運行結果:|That||dang|-|to_ot_in|'#!#$ |var|mint|'|s| |cost| |me| $|199|.|95|!英文
\b
屬於匹配位置的元字符,通常做佔位做用,而不被捕獲,同屬於匹配位置的還有匹配行起始位^
和行結束位$
di
三、\B 匹配非字母和數字邊界co
MSDN:匹配不得出如今 \b
邊界上字符
print(re.sub(re.compile(r"\B", re.S), "|", "That \bdang-to_ot_in' \b#!@\b#$ var\bmint's cost me $199.95!"))
運行結果:T|h|a|t d|a|n|g-t|o|_|o|t|_|i|n'| |#|!|@|#|$| v|a|m|i|n|t's c|o|s|t m|e |$1|9|9.9|5!|數字
非字母數字邊界,除了英文字母與數字以外的其餘字符都可被匹配到mint