^ |
輸入或行的起始部分。 |
^T 匹配"This good earth"中的"T",但與"Uncle Tom's Cabin"中的"T"不匹配
|
$ |
輸入或行的結(jié)尾部分。 |
h$ 匹配"teach"中的"h",但與"teacher"中的"h"不匹配
|
* |
0 個(gè)或多個(gè)前置字符。 |
um* 匹配"rum"中的"um"、"yummy"中的"umm"和"huge"中的"u"
|
+ |
1 個(gè)或多個(gè)前置字符。 |
um+ 匹配"rum"中的"um"和"yummy"中的"umm",但在"huge"中沒(méi)有任何匹配項(xiàng)
|
? |
前置字符最多出現(xiàn)一次(即,指示前置字符是可選的)。 |
st?on 匹配"Johnson"中的"son"和"Johnston"中的"ston",但在"Appleton"或"tension"中沒(méi)有任何匹配項(xiàng)
|
. |
除換行符外的任何單字符。 |
.an 匹配短語(yǔ)"bran muffins can be tasty"中的"ran"和"can"
|
x|y |
x 或 y。 |
FF0000|0000FF 匹配 bgcolor="#FF0000" 中的"FF0000"和 font color="#0000FF" 中的"0000FF"
|
{n} |
恰好 n 個(gè)前置字符。 |
o{2} 匹配"loom"中的"oo"和"mooooo"中前兩個(gè)"o",但在"money"中沒(méi)有任何匹配項(xiàng)
|
{n,m} |
至少 n 個(gè)、至多 m 個(gè)前置字符。 |
F{2,4} 匹配"#FF0000"中的"FF"和"#FFFFFF"中的前四個(gè)"F"
|
[abc] |
用括號(hào)括起來(lái)的字符中的任何一個(gè)字符。用連字符指定某一范圍的字符(例如,[a-f] 等效于 [abcdef])。 |
[e-g] 匹配"bed"中的"e"、"folly"中的"f"和"guard"中的"g"
|
[^abc] |
未在括號(hào)中括起來(lái)的任何字符。用連字符指定某一范圍的字符(例如,[^a-f] 等效于[^abcdef])。 |
[^aeiou] 最初匹配"orange"中的"r"、"book"中的"b"和"eek!"中的"k"
|
\b |
詞邊界(例如空格或回車符)。 |
\bb 匹配"book"中的"b",但在"goober"或"snob"中沒(méi)有任何匹配項(xiàng)
|
\B |
詞邊界之外的任何內(nèi)容。 |
\Bb 匹配"goober"中的"b",但在"book"中沒(méi)有任何匹配項(xiàng)
|
\d |
任何數(shù)字字符。等效于 [0-9]。 |
\d 匹配"C3PO"中的"3"和"apartment 2G"中的"2"
|
\D |
任何非數(shù)字字符。等效于 [^0-9]。 |
\D 匹配"900S"中的"S"和"Q45"中的"Q"
|
\f |
換頁(yè)符。 |
|
\n |
換行符。 |
|
\r |
回車符。 |
|
\s |
任何單個(gè)空白字符,包括空格、制表符、換頁(yè)符或換行符。 |
\sbook 匹配"blue book"中的"book",但在"notebook"中沒(méi)有任何匹配項(xiàng)
|
\S |
任何單個(gè)非空白字符。 |
\Sbook 匹配"notebook"中的"book",但在"blue book"中沒(méi)有任何匹配項(xiàng)
|
\t |
制表符。 |
|
\w |
任何字母數(shù)字字符,包括下劃線。等效于 [A-Za-z0-9_]。 |
b\w* 匹配"the barking dog"中的"barking"和"the big black dog"中的"big"和"black" |
\W |
任何非字母數(shù)字字符。等效于 [^A-Za-z0-9_]。 |
\W 匹配"Jake&Mattie"中的"&"和"100%"中的"%" |
<script>
function testfn(str)

{
var ex = "^\\w+$";
var re = new RegExp(ex,"i");
alert(re.test(str));
}
</script>

<script>
testfn("dfda");
testfn("123");
testfn(",");
testfn(".");
testfn("123.3");
</script>自己試驗(yàn)一下
實(shí)際應(yīng)用,Email驗(yàn)證
<script>
function testmail(str)

{
var ex = "^\\w+@[\\w]+\\.+[a-z]{2,3}$";
var re = new RegExp(ex,"i");
alert(re.test(str));
}
</script>

<script>
testmail("aacom@fda.com");
</script>
注意.的轉(zhuǎn)義處理,因?yàn)?本身在正則表達(dá)式中有含義,代表非換行的單個(gè)字符
而我們想要的是.的實(shí)際標(biāo)點(diǎn)
<script>
function spliturl(str)

{
var ex = "\\w{3}\.\\w+\.\\w{2,3}\\.\\w{2,3}";
var re = new RegExp(ex);
var arr = re.exec(str);
alert(arr[0]);
}
</script>

<script>
spliturl("www.itnow.com.cn");
</script>
<script>
function spliturl(str)

{
var ex = "(\\w{3})\.(\\w+)\.(\\w{2,3})\\.(\\w{2,3})";
var re = new RegExp(ex);
var arr = re.exec(str);
alert(arr);
alert(RegExp.$1);
alert(RegExp.$2);
}
</script>

<script>
spliturl("www.itnow.com.cn");
</script>加了小括號(hào)就是定義了一個(gè)變量,可以使用,js中保存在RegExg.$1 ---- RegExg.$9中
posted on 2006-03-11 13:23
北國(guó)狼人的BloG 閱讀(293)
評(píng)論(0) 編輯 收藏