正則表達式(regular expression)是可以匹配文本片段的模式。最簡單的正則表達式就是普通字符串,可以匹配其自身。比如,正則表達式 'hello' 可以匹配字符串 'hello'。
要注意的是,正則表達式并不是一個程序,而是用于處理字符串的一種模式,如果你想用它來處理字符串,就必須使用支持正則表達式的工具,比如 Linux 中的 awk, sed, grep,或者編程語言 Perl, Python, Java 等。
正則表達式有多種不同的風(fēng)格,下表(改編自 huxi)列出了適用于 Python 或 Perl 等編程語言的部分元字符以及說明:
python\.org
注:如果使用 python.org
來匹配,由于 .
可以匹配任意一個字符(換行符除外),因此,它也會匹配到類似 pythonmorg 的字符串,為了匹配點號,我們需要加 \
來轉(zhuǎn)義。
\d{3}\-\d{8}
注:\d
表示匹配數(shù)字,\d{3}
表示匹配 3 個數(shù)字,\-
表示匹配 -
。
^\w+$
或
^[0-9a-zA-Z_]+$
^(13[0-9]|15[0|1|2|3|5|6|7|8|9]|18[0-9])\d{8}$
^[0-9]+(.[0-9]{2})?$
^[\u4e00-\u9fa5]{0,}$
注:中文的 unicode 編碼范圍主要在 \u4e00-\u9fa5
。