如何将模式与正则表达式匹配

时间:2010-08-24 08:24:41

标签: javascript jquery regex

我想验证一个字符串,如果只包含a-z,0-9和符号。 - _ @和; 我有这个代码:

var regex = new RegExp('[a-z0-9@.;_-]{8,}');

并且离我正在寻找的东西不远,但它也会返回:

'123@123.com°%'

我正在使用jquery通过div加载字符串,我更多地添加了一些代码:

    var mailinglist= $('#mailinglist').val();
    var regex = new RegExp('\^[0-9a-z.-_;@]{8,}$\','i');

    if (mailinglist.match(regex)){}
    else{}

如果存在空格或模式中未定义的任何其他字符,我需要匹配返回false。

谢谢: - )

2 个答案:

答案 0 :(得分:7)

添加字符串的开始和结束锚点。

var regex = /^[a-z0-9@.;_-]{8,}$/
//           ↑                 ↑

此外,除非你有一些动态模式,否则更喜欢正则表达式文字/.../而不是从字符串new RegExp('...')构造一个RegExp对象。

答案 1 :(得分:0)

ok在stackoverflow上找到了,我必须更好地搜索

How to validate input using javascript