验证字符串

时间:2010-05-19 19:27:07

标签: javascript regex

我对正则表达式不太好......

我需要一个JavaScript正则表达式,它将执行以下操作:

  1. 该字符串可以包含字母(上部小写),但不包括éàïç......
  2. 等标点符号
  3. 该字符串可以在字符串中的任何位置包含数字(0..9),第一个位置上的外。
  4. 该字符串可以包含下划线(_)。
  5. 有效字符串:

    • FOO
    • foo1
    • foo_bar这样的名称
    • foobar的

    无效的字符串:

    • 1foo - >数字作为第一个字符
    • foo bar - >空间
    • föo - >标点符号ö

    非常感谢!

1 个答案:

答案 0 :(得分:9)

这个正则表达式应该做你需要的:

/^[a-z_]+[\w]*$/i

按如下方式使用:

var match = /^[a-z_]+[\w]*$/i.test(string);

一些解释:

/      : start of JavaScript regex pattern
^      : start of string
[a-z_] : only alphabetic characters or underscore
+      : one or more
[\w]   : any word-character (aplhanumeric and the underscore)
*      : zero or more
$      : end of string
/      : end of JavaScript regex pattern
i      : case insensitive modifier

要了解有关正则表达式的更多信息,您可能会发现this site很有用。