var cityRegex = /^[a-zA-z] ?([a-zA-z]|[a-zA-z] )*[a-zA-z]$/;
是我尝试过的。
但是当您输入像“圣彼得堡”这样的城市时,它会出错。
更新:似乎几乎是一个失败的原因。有太多奇怪名字的城市有数字、破折号、撇号、句号等。
var cityRegex = /^[a-zA-z] ?([a-zA-z]|[a-zA-z] )*[a-zA-z]$/;
是我尝试过的。
但是当您输入像“圣彼得堡”这样的城市时,它会出错。
更新:似乎几乎是一个失败的原因。有太多奇怪名字的城市有数字、破折号、撇号、句号等。
如果评论不够清楚,这不是可以通过正则表达式实际验证的东西。正确的做法是接受将输入一些不良数据并继续前进。如果你真的需要城市存在并且你认为这个javascript 验证会帮助你,那你就大错特错了。
在回答您的问题时,这里的正确验证是:
.*