验证字符串

Act*_*ist 1 javascript regex

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

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

  1. 字符串可以包含字母(大写小写),但不包含标点,例如éàïç...
  2. 该字符串可以在字符串中的任何位置包含数字(0..9),第一个位置除外.
  3. 该字符串可以包含下划线(_).

有效字符串:

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

无效的字符串:

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

非常感谢!

Bal*_*usC 9

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

/^[a-z_]+[\w]*$/i
Run Code Online (Sandbox Code Playgroud)

使用方法如下:

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

一些解释:

/      : 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

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