字符簡寫式php
字符簡寫式 | 描述 | 字符簡寫式 | 描述 |
---|---|---|---|
\d | 報警符 | \w | 單詞字符 |
[\b] | 退格字符 | \W | 非單詞字符 |
\c x | 控制字符 | \0 | 空字符 |
\d | 數字字符 | \x xx | 字符的十六進制 |
\D | 非數字字符 | \u xxx | 字符的 Unicode 值 |
\o xxx | 字符的八進制 |
匹配各類空白符html
字符簡寫式 | 描述 | 字符簡寫式 | 描述 |
---|---|---|---|
\f | 換頁符 | \s | 空白符 |
\h | 水平空白符 | \S | 非空白符 |
\H | 非水平空白符 | \t | 水平製表符 |
\n | 換行符 | \v | 垂直製表符 |
\r | 回車符 | \V | 非垂直製表符 |
在 sed 中使用正則git
$ echo Hello | sed s/Hello/Goodbye/ //Goodbye
* 插入github
$ sed 's/^/<h1>/; s/$/<\/h1>/p; q' Hello Sed //<h1>Hello Sed</h>
在 Perl 中使用正則:正則表達式
$ perl -ne 's/Hello/Goodbye/; print' Hello //Goodbye
* 插入express
$ perl -ne 's/^/<h1>/; s/$/<\/h1>/m; print;' Hello Perl //<h1>Hello Perl</h1>
匹配元字符的字面值瀏覽器
元字符:.^$*+?|(){}[]\-
app
用\Q$\E
或 \$
匹配工具
正則表達式中的選項學習
選項 | 描述 | 選項 | 描述 |
---|---|---|---|
(?d) | Unix 中的行 | (?i) | 不區分大小寫 |
(?J) | 容許重複的名字 | (?m) | 多行 |
(?s) | 單行(dotall) | (?u) | Unicode |
(?U) | 默認最短匹配 | (?x) | 忽略空格和註釋 |
(?-…) | 復原或關閉選項 |
Perl 語言中的修飾符
修飾符 | 描述 |
---|---|
a | 匹配\d、\s、\w 以及處於 ASCII 範圍內的 POSIX 字符 |
c | 匹配失敗後停留在當前位置 |
d | 使用默認的本地平臺規則 |
g | 全局匹配 |
i | 不區分大小寫 |
1 | 使用當前位置的規則 |
m | 多行匹配 |
p | 保留匹配的字符串 |
s | 將字符串看作一行內容 |
u | 匹配時使用 Unicode 規則 |
x | 忽略空格及註釋 |
POSIX 字符組
字符組 | 描述 |
---|---|
[[:alnum:]] | 匹配字母及數字 |
[[:alpha:]] | 匹配大小寫字母 |
[[:ascii:]] | 匹配 ASCII 字符 |
[[:space:]] | 匹配空格和製表符 |
[[:blank:]] | 匹配空格字符 |
[[:ctrl:]] | 匹配控制字符 |
[[:digit:]] | 匹配數字 |
[[:graph:]] | 匹配圖形字符 |
[[:lower:]] | 匹配小寫字母 |
[[:print:]] | 匹配可打印字符 |
[[:punct:]] | 匹配標點符號 |
[[:upper:]] | 匹配大寫字母 |
[[:word:]] | 匹配單詞字符 |
[[:xdigit:]] | 匹配十六進制數字 |
[[:^alpha:]] | 匹配非字母字符 |
Unicode 中文:[\u4e00-\u9fa5]
量詞
語法 | 描述 | 語法 | 描述 |
---|---|---|---|
? | 零個或一個(可選) | ?? | 懶惰匹配零次或一次(可選) |
+ | 一個或多個 | +? | 懶惰匹配一次或屢次 |
* | 零個或多個 | *? | 懶惰匹配零次或屢次 |
{n} | 精確匹配 n 次 | {n}? 懶惰匹配 n 次 | |
{n,} | 匹配 n 次或更屢次 | {n,} | 懶惰匹配 n 次或屢次 |
{m,n} | 匹配 m 至 n 次 | {m,n} | 懶惰匹配 m 至 n 次 |
{0,1} | 與? 相同 | ||
{1,} | 與 + 相同 | ||
{0,} | 與 * 相同 |
語法 | 描述 |
---|---|
(?=exp) | 正前瞻,匹配 exp 前的位置 |
(?!exp) | 反前瞻,匹配後面不是 exp 的位置 |
(?<=exp) | 正後顧,匹配 exp 後面的位置 |
(?<!exp) | 反後顧,匹配前面不是 exp 的位置 |
國內電話號碼: ^(\(\d{3}\))\d{8}|(\(\d{4}\))\d{7,8}|\d{3}-\d{8}|\d{4}-\d{7,8}$
(010)1234567八、(0755)123456七、010-1234567八、0755-1234567
電子郵箱: [\w!#$%&'*+/=?^_`{|}~-]+(?:\.[\w!#$%&'*+/=?^_`{|}~-]+)*@(?:[\w](?:[\w-]*[\w])?\.)+[\w](?:[\w-]*[\w])?
強烈推薦: 《正則表達式 30 分鐘入門教程》
至於圖靈的《學習正則表達式》,我的不建議買,裏面的內容「30 分鐘」都有,若是想進一步學習正則表達式,推薦直接看《精通正則表達式(第 3 版)》或《正則表達式經典實例》。
另外推薦幾款正則工具:
Posted by XiaoYi_HD - 5月 22 2013
如需轉載,請註明: 本文來自 Esoft Mobile