寫這篇文章床玻,主要目的是讓剛?cè)胄械耐瑢W(xué)們能夠看懂或者嘗試自己寫出正則表達(dá)式犯戏,希望對同學(xué)們有所幫助她混,大神們請自行掠過。
先從幾個基礎(chǔ)符號說吧壮啊。
1.兩個特殊的符號'^' '$' 他們分別代表一個字符串的開始和結(jié)束嫉鲸,比如:
"^ab": 表示所有以"ab"開始的字符串;
"ab$":表示所有以ab結(jié)尾的字符串;
"^abc&":表示開始和結(jié)尾都是abc的字符串;
而"abc"則代表串的任何部分歹啼,而不是頭或尾玄渗。
2.'' '+' '?'表示一個或一序列字符重復(fù)出現(xiàn)的次數(shù)。它們分別表示“沒有或更多”狸眼,“一次或更多”還有“沒有或一次”藤树。下面是幾個例子:
"ab":表示一個字符串有一個a后面跟著零個或若干個b。("a", "ab", "abbb",……): a+nb (n為自然數(shù))
"ab+":表示一個字符串有一個a后面跟著至少一個b或者更多 : a+nb (n為自然數(shù)且不為0)
"ab?":表示一個字符串有一個a后面跟著零個或者一個b : a 或者 ab
"a?b+$":表示在字符串的末尾有零個或一個a跟著一個或幾個b拓萌。
3.單獨說一下大括號 {} 用以表示重復(fù)次數(shù)的范圍, 比如:
"ab{2}" : "abb";
''ab{2,}'': "a+nb" (n>=2);
'''ab{2,5}': a+nb (2<=n<=5)
注意了:范圍符號必須指定范圍的下限岁钓,上限則無所謂 比如''ab{,2}''就是錯誤的;
'.' 這個點符號可以替代任何字符
"a.[0-9]":表示一個字符串有一個"a"后面跟著一個任意字符和一個數(shù)字;
"^.{3}$":表示有任意三個字符的字符串(長度為3個字符)屡限;
5.中括號表示某些字符允許在一個字符串中的某一特定位置出現(xiàn):
"[ab]":表示一個字符串有一個"a"或"b"(相當(dāng)于"a|b")品嚣;
"[a-d]":表示一個字符串包含小寫的'a'到'd'中的一個(相當(dāng)于"a|b|c|d"或者"[abcd]");
"^[a-zA-Z]":表示一個以字母開頭的字符串钧大;
"[0-9]%":表示一個百分號前有一位的數(shù)字翰撑;
",[a-zA-Z0-9]$":表示一個字符串以一個逗號后面跟著一個字母或數(shù)字結(jié)束。
這就是超級基礎(chǔ)的正則表達(dá)式了啊央,雖然說平時開發(fā)很少用的到眶诈,網(wǎng)上也一大堆,但就當(dāng)是興趣稍微研究一下吧-_-
希望對大家有所幫助9霞ⅰJ徘恕!