Kia Ora, 我试图证明一个字符串是不是空的,并且使用的字符只是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闭包中。
答案 0 :(得分:2)
使用
var regex = /^[a-zA-Z]+(?:\.[a-zA-Z]+)*$/;
请参阅regex demo。
<强>详情:
^
- 字符串开头[a-zA-Z]+
- 一个或多个字母(?:\.[a-zA-Z]+)*
- 0+序列:
\.
- 一个点[a-zA-Z]+
- 一个或多个字母$
- 字符串结束。