2013-02-11 66 views
-1

我不明白正则表达式是如何工作的,所以这可能是很多人的一个简单问题,但对我来说非常重要的是,一个人可以用简单的词语来解释我如何使用它。正则表达式函数4个字母和4个数字?

我需要在jQuery的验证添加新的功能

$.validator.addMethod("loginRegex",function(a,b){return this.optional(b)||/^[a-zA-Z\d]+$/.test(a)},"Solo se aceptan letras o numeros"); 

此功能只接受字母和数字,但如果你把FH374HD3的验证返回我真的,但我需要有效的4个字母和4个数字例如:“ABCD4578”,只有字母和数字,但是最后4个字母和4个数字。

那是posible?全部都是!

+0

加入一种问题,正则表达式表达式结尾的“+ $”是什么意思......没有重要的问题,但我想学习 – andrescabana86 2013-02-11 22:24:05

+5

你不明白正则表达式?多好的时间开始学习!阅读一些文档:https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions#Writing_a_Regular_Expression_Pattern。也很有用:http://www.regular-expressions.info/ – 2013-02-11 22:24:06

+0

@MattBall我不会说英语,所以当我学习说话更好,我阅读指南,在那个时候...我必须使用stackoverflow! thanx stackoverflow和TNX都是因为我的英语很糟糕,但你一直都在回答! – andrescabana86 2013-02-11 22:27:38

回答

8

这将匹配一个字符串,它正好是8个字符长,与正好四个字母开头,后面四个数字:

/^[a-z]{4}\d{4}$/i 

这也可以写成:

/^[A-Za-z]{4}\d{4}$/ 

与不区分大小写内联。

  • ^字符串
  • [a-z]字母匹配从下壳体a为小写z
  • {4}的开头相匹配的先前的选择相匹配的4倍([a-z][a-z][a-z][a-z]但在更少的字符)
  • \d比赛数字(相当于[0-9]
  • {4}如上(\d\d\d\d个但在更少的字符)
  • $字符串
  • i的结尾匹配是不区分大小写的标志,以便为[a-z]大写字母也匹配。

还应该指出,这将不匹配特殊字符,如é或à因为它们不在范围[a-z]中。

+0

这与/ i和/ – andrescabana86 2013-02-11 22:25:43

+0

@ andrescabana86 [**阅读文档**](https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions#Advanced_Searching_With_Flags)之间的区别 – 2013-02-11 22:28:33

+4

' [Az]'不等同于不区分大小写的[az]'。 'Z'和'a'之间的字符不是“字母”。 '[A-Za-z]'会以适当的方式来做到这一点。 – eldarerathis 2013-02-11 22:30:04

1

你的意思是你想要一个只能验证4个字母然后4个数字的正则表达式吗?

也许是这样的:

/^[A-Za-z]{4}\d{4}$/ 
+0

大声笑打败我 – 2013-02-11 22:26:16

2

您可以使用下面的验证4个首都和4号:

^[A-Z]{4}\d{4}$ 
1

独立表达。

^[a-zA-Z]{4}[\d]{4}$ 

您可以测试它像this one网站这样你就可以使用正则表达式发挥出来(,花一些时间)...

+0

thanx的网络,我认为是最好的帮助,任何人都可以给我这个问题和未来的问题 – andrescabana86 2013-02-11 22:33:59

1

如已经发布尝试: ^ [A-ZA-Z] {4} [0-9] {4}

比赛正好是4个字母(大写藏汉)和4号

相关问题