这是the page
如果您选择3个调制解调器中的一个,它将打开下面的表格。
在结算>地址第1行字段(左列),我正在尝试检查邮政信箱条目并在字段上方显示隐藏的消息。我们试图阻止PO Box,但它仍然应该允许提交,所以我将从表单上的jq val插件中单独处理它。
无论我尝试什么,它都无法正常工作。输入上的绑定正在工作,因为它正确记录,必须是正则表达式的问题,但我无法确定它。
这是当前的js
var pobox = new RegExp('[PO.]*\\s?B(ox)?.*\\d+', 'i');
$("#bill_address1").bind("change paste keyup", function(){
if ($(this).val().match(pobox)) {
$('#pobox-warning').fadeIn(50);
console.log('box');
}
else {
$('#pobox-warning').fadeOut(50);
console.log('no box');
}
});
任何帮助将不胜感激 - 谢谢!
答案 0 :(得分:3)
在我看来,像
这样的简单正则表达式模式/PO *Box/gi
效果最好。忽略大小写。匹配字母PO和任意数量的空格,后跟单词Box。
编辑:
或者匹配整个邮政信箱行,有或没有期间:
/P\.?O\.? *Box *\d*/gi
答案 1 :(得分:1)
正则表达式的初始部分匹配 单个“P”,“O”或“。”。你可能想要更像的东西:
var pobox = /(P\.?O\.?)?\s*B(ox)?.*\d+/i;
尽可能在JavaScript中使用本机正则表达式语法要容易得多,因为它似乎就是这种情况。
答案 2 :(得分:0)
让它合作 var pattern = /^[P|p](OST|ost).*\s*[O|o|0](ffice|FFICE).*\ * [b | b]〔O | O | 0] [X | X] \ S *(\ d)* / GI;
欣赏每个人的意见