我需要验证字符串不应包含邮政信箱,也不应包含特殊字符(仅接受连字符、逗号和空格)。所以,我想出了正则表达式:
/^(?!.*(?:(.*((p|post)[-.\s]*(o|off|office)[-.\s,]*(box)[-.\s]*)|.*((p |post)[-.\s]*(box)[-.\s]*))))[0-9a-zA-Z\s\-\,]{1,40}$/i
例如:
Test Po Box - Should NOT be acceptable
Test Post Office Box - Should NOT be acceptable
Test Po,Box - Should NOT be acceptable
Test PO BOx - Should NOT be acceptable
Test-123po - Should be acceptable
Test-!@$% - Should NOT be acceptable
Test123@#$ PoBOX - Should NOT be acceptable.
但看起来它不起作用。
有什么帮助吗?