哈哈,大师来了。也看了不少正则式的资料了,才知道这点差别。可见有的资料也是误导了人啊!才知道“[.]{4} 是匹配四个连续的句点字符而已”。在网上流行的政则式说明资料里面,都有这样的话:
. 匹配除 "\n" 之外的任何单个字符。要匹配包括 '\n' 在内的任何字符,请使用象 '[.\n]' 的模式。
被这些误导搞晕了。
那么,大师:\s,\w等等,放在中括号[]里,和不放在中括号[]里,又有什么不同呢??
. 匹配除 "\n" 之外的任何单个字符。要匹配包括 '\n' 在内的任何字符,请使用象 '[.\n]' 的模式。
被这些误导搞晕了。
那么,大师:\s,\w等等,放在中括号[]里,和不放在中括号[]里,又有什么不同呢??
如果你要匹配所有非\n字符4个的话需要
var re=/.{4}/g;
而
var re=/[.]{4}/g 与 var re=/\.{4}/g 相同,
表示四个. 此时的.没有特殊意义了,只代表英文的句点。
\w [a-zA-Z0-9_]
若只是匹配一种类型的字符,放不放在[]都没有关系,比如 \w{4} [\w]{4}
但若是多种类型的组合那就得用 [] 包括起来了, [\s\w]{4} \s\w{4}
这两种写法就不太一样了。
var str="aaaaaaaa";
if (re.test(str)){
alert("请输入文件名");
}
请问为什么re.test(str)返回true?当str里的字符数为1,2,时候都返回false,但是大于3的时候也应该返回法律色啊?
谢谢,
对吗?
那么请问:\s\w,\d 等等元字符,并不会因为是否处于中括号内而改变它们本来的意思。只有.才存在这个区别?
今日一问,真是学了不少。
var str="aaaaaaaa";
if (re.test('fhd'))
{
alert("请输入文件名");
}
继续求教。
继续求教。
谢谢
var str="aaaaaaaa";
if (re.test('fhd'))
{
alert("请输入文件名");
}