正則表達式確定重複出現

正則表達式確定重複出現,可能要匹配一个单词或一组数字,一个单词有若干个字母组成,一组数字有若干个单数组成。跟在字符或字符簇后面的花括号({})用来确定前面的內容的重复出现的次数。

字符簇 描述
^[a-zA-Z_]$ 所有的字母和下劃線
^[[:alpha:]]{3}$ 所有的3個字母的單詞
^a$ 字母a
^a{4}$ aaaa
^a{2,4}$ aa,aaa或aaaa
^a{1,3}$ a,aa或aaa
^a{2,}$ 包含多于兩個a的字符串
^a{2,} 如:aardvark和aaab,但apple不行
a{2,} 如:baad和aaa,但Nantucket不行
\t{2} 兩個制表符
.{2} 所有的兩個字符

這些例子描述了花括號的三種不同的用法。一個數字 {x} 的意思是前面的字符或字符簇只出現x次 ;一個數字加逗號 {x,} 的意思是前面的內容出现x或更多的次数 ;兩個數字用逗號分隔的數字 {x,y} 表示 前面的內容至少出现x次,但不超过y次。我們可以把模式擴展到更多的單詞或數字:

^[a-zA-Z0-9_]{1,}$      // 所有包含一个以上的字母、数字或下划线的字符串
^[1-9][0-9]{0,}$        // 所有的正整数
^\-{0,1}[0-9]{1,}$      // 所有的整数
^[-]?[0-9]+\.?[0-9]+$   // 所有的浮点数

最后一个例子不太好理解,是吗?这么看吧:以一个可选的负号 ([-]?) 开头 (^)、跟著1個或更多的數字([0-9]+)、和一個小數點(\.)再跟上1個或多個數字([0-9]+),並且後面沒有其他任何東西($)。下面你將知道能夠使用的更爲簡單的方法。

特殊字符 ?{0,1} 是相等的,它們都代表著: 0个或1个前面的內容前面的內容是可选的 。所以剛才的例子可以簡化爲:

^\-?[0-9]{1,}\.?[0-9]{1,}$

特殊字符 *{0,} 是相等的,它們都代表著 0 个或多个前面的內容 。最後,字符 +{1,} 是相等的,表示 1 个或多个前面的內容 ,所以上面的4個例子可以寫成:

^[a-zA-Z0-9_]+$      // 所有包含一个以上的字母、数字或下划线的字符串
^[1-9][0-9]*$        // 所有的正整数
^\-?[0-9]+$          // 所有的整数
^[-]?[0-9]+(\.[0-9]+)?$ // 所有的浮点数
正則表達式基礎語法
. - 除换行符以外的所有字符。
^ - 字符串开头。
$ - 字符串结尾。
\d,\w,\s - 匹配数字、字符、空格。
\D,\W,\S - 匹配非数字、非字符、非空格。
[abc] - 匹配 a、b 或 c 中的一个字母。
[a-z] - 匹配 a 到 z 中的一个字母。
[^abc] - 匹配除了 a、b 或 c 中的其他字母。
aa|bb - 匹配 aa 或 bb。
? - 0 次或 1 次匹配。
* - 匹配 0 次或多次。
+ - 匹配 1 次或多次。
{n} - 匹配 n次。
{n,} - 匹配 n次以上。
{m,n} - 最少 m 次,最多 n 次匹配。
(expr) - 捕获 expr 子模式,以 \1 使用它。
(?:expr) - 忽略捕获的子模式。
(?=expr) - 正向预查模式 expr
(?!expr) - 负向预查模式 expr

在線客服QQ:543690914,備案號: 蘇ICP備15037649號-32。東海縣白塔埠鎮佳誠電腦經營部版權所有。

xxfseo.com