正则表达式仅适用于字符az,AZ

我不知道如何在JavaScript或jQuery中创建正则表达式。

我想创建一个正则表达式,它将检查字符串是否只包含az和AZ之间的任何排列字符。

编辑

当我试图制作正则表达式时

/^[a-zA-Z\s]+$/ 

接受白色空间。 它不起作用。 可能是什么错误?

我正在JavaScript RegExp上测试我的正则表达式示例:在线正则表达式测试器

 /^[a-zA-Z]*$/ 

如果您不想允许空匹配,请将*更改为+

参考文献:

字符类( [...] ) , 锚点( ^$ ) , 重复( +*

/只是分隔符,它表示正则表达式的开始和结束。 现在你可以在它上面使用修饰符 。

抄袭其他答案所说的,因为你根本不知道怎么做,这里有一个如何用JavaScript做的例子:

 var charactersOnly = "This contains only characters"; var nonCharacters = "This has _@#*($()*@#$(*@%^_(#@!$ non-characters"; if (charactersOnly.search(/[^a-zA-Z]+/) === -1) { alert("Only characters"); } if (nonCharacters.search(/[^a-zA-Z]+/)) { alert("There are non characters."); } 

/正则表达式的开始和结束表示它是正则表达式。 search函数同时使用字符串和正则表达式,因此必须指定正则表达式。

从MDN Docs ,如果没有匹配,则函数返回-1

另请注意:这适用于az,AZ。 如果有空格,它将失败。

 /^[a-zA-Z]+$/ 

在我的头顶。

编辑:

或者,如果您不喜欢看起来很奇怪的文字语法,您可以这样做

 new RegExp("^[a-zA-Z]+$"); 

使用POSIX Bracket Expressions(Javascript不支持),可以这样做:

 /[:alpha:]+/ 

任何字母A到Z或a到z。

要么

 /^[[:alpha:]]+$/s 

严格匹配空格。