(……续例6)ide
例7:择一匹配spa
- void function reg_07()
- {
- var s1 = "0",
- s2 = "0.23",
- s3 = "100",
- s4 = "100.01",
- s5 = "9.9",
- s6 = "99.9",
- s7 = "99.",
- s8 = "00.1",
- s9 = "05",
- s10 = "100.00",
- s11 = "100.",
- s12 = "+100.000";
- var r = /^\+?((100(.0+)?)|([1-9]?[0-9])(\.\d+)?)$/g; //匹配0到100的数
- for (i = 1; i <= 12; i++)
- {
- t = "alert(s" + i + ".match(r));"
- eval(t);
- }
- }
这是一个匹配0到100数字的简单版本。
(.0+)?符号中的括号表示.0+是一个总体,后面的?符号表示该总体能够出现0次或1次,即100后面要么什么都没有,要么有小数点的同时还必须有1个或多个0。
一样(\.\d+)?也是同样的道理,即若是有小数点则后面必须有数字。
中间的|符号表示必选其中之一,即要么包含三位整数,要么包含1位或两位整数。
这其中,()符号起到了分组的做用,与四则运算中的括号是相似的。
运行结果:s一、s二、s三、s五、s六、s十、s12是能够匹配的。string
(未完待续……)it