PO BOX验证的正则表达式

时间:2015-07-01 09:53:26

标签: javascript

我正在使用模式:

var isPOAddress=/^(A\s*\.?\s*)(P\s*\.?\s*)(O\s*.?\s*)(Box+\*)|(Box\s+#?\d+)/gi;

我的要求是:邮政信箱在邮箱后不应允许编号。

E.g。不应接受Box123或Box 123。

3 个答案:

答案 0 :(得分:1)

/([Pp](ost)?[\.\s-]*?[Oo](ffice)?)*?[\.\s-]*?[Bb](ox)?[\.\s+-]*?\d+/

<强>匹配

邮政信箱34

P.O。方框987, po Box 34, 口服方框987, 口服方框987, 邮政信箱7897, po box 89,
p.o.b. 89, pob 909, 口服方框098, po-box 098, p.o.-box 898, PO-Box 098, p.o box 0909, pobox 898, p-o-box 909, p-o box 89089, 邮政信箱098, 邮政信箱方框909, 邮政信箱098, 邮政信箱89070, 方框122, Box122, 箱122

不匹配: ramapo 324

答案 1 :(得分:0)

 /(?:PO BOX).(\S\D)/i  
  

不匹配PO BOX 1213,PO BOX121

     

将匹配PO BOX @ 32,PO BOX @sas

你正在寻找的是什么?如果你提供一些测试字符串,那就更好了

答案 2 :(得分:0)

这应该符合您的需求:

http://regexr.com/3cc2q

var isPOAddress = /\bP(ost|ostal)?([ \.]*(O|0)(ffice)?)?([ \.]*Box)?\b/i;
  • 失败 - po box
  • 失败 - p.o。框
  • 失败 - po bo
  • 失败 - 邮政信箱
  • 失败 - P.O。框
  • 失败 - PO。框
  • 失败 - 邮政信箱
  • 失败 - POBox
  • 失败 - P O Box
  • 失败 - P.O Box
  • 失败 - PO
  • 失败 - 邮箱
  • 失败 - 邮政信箱
  • 传递 - 便便盒
  • 传递 - 小马框