2013-05-06 90 views
1

你好,我是新来的正则表达式,我发现自己坚持这个问题。正则表达式来搜索8个字符串的两个连续的数字和后来的字母

我有一个8字符的字符串,以前被过滤只是一个字母数字,所以这个字符串将只包含数字和字母。我期望做的是找到字符串中任意位置的前两个连续数字,一旦找到,确保两个连续数字后面的任何字符都是字母字符a-z,如果不匹配,则返回false; 到目前为止,我

var str = "abc11hsb“;

var testIt = /[0-9]{2}/i; 
var test = testIt.test(str); 
test //true 

但是,如果我有这样的字符串

var str = "abc11h7b"; 

,我运行相同的试验,它上面应该因为经过前两个数字返回false匹配后面的每个字符都应该是一个字母字符az,上面的字符串在11之后有一个7;我的正则表达式只考虑找到两个连续的数字,但没有说明这些前两位数字之后的每个字符应该成为一个字符本质上是a-z。

希望这是明确的

再次你的帮助始终是极大的赞赏

回答

1

试试这个正则表达式:/[0-9]{2}[a-z]+$/i

+0

哎杰伊 - 感谢您的回答非常感谢,我会很快接受为正确答案 - 我可以展开该正则表达式包含一个例外,即两个数字可能是字符串中的最后一个字符 - 再次感谢 – 2013-05-06 01:11:51

+0

当然,您可以用*代替+,如下所示/ [0-9] {2} [az ] * $/I – 2013-05-06 01:19:00

相关问题