1. 程式人生 > >python_正則_re模塊

python_正則_re模塊

erb 匹配字符串 字母 正則表達式引擎 pre .... 空字符 brush bsp

正則表達式元字符:

字符匹配 :

.       :除換行符以外的任意單個字符
[]      :指定範圍內字符
[^]     :指定範圍外字符

次數匹配:

*       :任意次,0,1,多次
.*      :任意字符 任意次
?       :至多1次或0次
+       :至少出現1次或多次
{m}     :其前面字符出現m次
{m,n}   :其前面字符出現至少m次,至多n次
{m,}    :其前面字符出現至少m次
{,n}    :其前面字符出現至多n次

  

位置錨定:

^       :匹配字符串的開頭
$       :匹配字符串的末尾

  

分組及引用:

()      :分組,括號內模式會被記錄於正則表達式引擎
後向引用 :\1  \2  \3..... 

或:

a|b     :a或者b
C|cat   :C或cat
(C|c)at :Cat或cat

  

轉義字符:

\w      :匹配字母數字
\W      :匹配非字母數字
\s      :匹配任意空白字符,等價於 [\t\n\r\f].
\S      :匹配任意非空字符
\d      :匹配任意數字,等價於 [0-9].
\D      :匹配任意非數字
\A      :匹配字符串開始
\Z      :匹配字符串結束,如果是存在換行,只匹配到換行前的結束字符串
\z      :匹配字符串結束
\G      :匹配最後匹配完成的位置。
\b      :匹配一個單詞邊界,也就是指單詞和空格間的位置。例如, ‘er\b‘ 可以匹配"never" 中的 ‘er‘,但不能匹配 "verb" 中的 ‘er‘。
\B      :匹配非單詞邊界。‘er\B‘ 能匹配 "verb" 中的 ‘er‘,但不能匹配 "never" 中的 ‘er‘。
\n      :匹配一個換行符
\t      :匹配一個制表符
\1...\9 :匹配第n個分組的子表達式 

  

python_正則_re模塊