到目前为止,我有以下正则表达式加事件密钥用于地址验证:
根据下面的评论更新了Regex:
const ADDRESS_REGEX = /^[a-zA-Z0-9\s.,'-]*$/;
addressValidation(event){
if (!ADDRESS_REGEX.test(event.key) && event.key !== "Tab" && event.key !== "Delete" && event.key !== "Backspace" && event.key !== "ArrowLeft" && event.key !== "ArrowRight" && event.key !== "Enter" && event.key !== "NumpadEnter"){
return false;
}
}
它正常工作,除非是阻塞期。如何更新正则表达式以允许句点?一个更大的问题,是字母数字,逗号,超级,时间正确的地址验证?
问题#2
如何修改上述正则表达式以检查数字后跟单词或单词后跟数字。例: “33随机街道”或 “西57街9号”
答案 0 :(得分:1)
您可以使用
/^[a-zA-Z0-9\s.,'-]*$/
^
字符类中的点始终与文字点匹配,无需转义它。
请参阅regex demo。
请注意@revo关于使用key
对象event
属性的潜在问题的评论(不能保证它适用于移动设备)。
对于问题的第二部分,您可以尝试
^[^\W_]+(?:[\s.,'-][^\W_]+)*$
参见9regex演示](https://regex101.com/r/q6LoSE/3)