起亚奥拉, 我试图证明一个字符串是否不为空并且使用的字符只是 A-Za-z 和点。 这不是很复杂,可以用这个来完成:
var str = "Aj.fwfw.MMf";
var regex = new RegExp("/^[a-zA-Z.]+$/");
if(str.match(regex)) { }
我的问题是,我不想在开头、结尾或一行中有多个点。 所以诸如“.fshdfhUUhd.d”、“jjf”之类的东西。和“fff..gg”是被禁止的。
有人知道怎么解决吗?我想把它放在一个正则表达式中,但如果这不可能,那么它也可以更多,在 if 闭包中与 && 结合。
最佳答案
使用
var regex = /^[a-zA-Z]+(?:\.[a-zA-Z]+)*$/;
参见 regex demo .
详细信息:
^
- 字符串的开始[a-zA-Z]+
- 一个或多个字母(?:\.[a-zA-Z]+)*
- 0+ 个序列:\.
- 一个点[a-zA-Z]+
- 一个或多个字母
$
- 字符串结尾。
关于javascript - 带点的正则表达式 Javascript 字母,不在开头或结尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42593876/