要求:匹配一个“以 '数字+空格' 开头,后缀任意多个字符”的字符串
实现:
[code="js"]
var str = "just 2 as I thought";
var rst = /\d .*/.test(str );
[/code]
以上代码测试结果rst=true.但是从要求上来看,我需要的是必须以 '数字+空格' 开头的才被匹配到。
换句话说,我要验证的是“某个字符串本身是否符合给定的正则表达式”,而非“某个字符串中是否含有符合给定正则表达式的子字符串”。
我没记错的话在java里面的String.matchs(regex)方法正是“某个字符串本身是否符合给定的正则表达式”:"just 2 as I thought".matchs("\d .*")这个方法返回值应该会是false。
而通过Matches类里面的find()方法(方法名可能没记对)来进行的正则表达式则可以实现“某个字符串中是否含有符合给定正则表达式的子字符串”。
那么,js中是否有可以验证“某个字符串本身是否符合给定的正则表达式”这个要求的函数呢?