我必须限制APO FPO地址的城市。我已经使用这个正则表达式做到了这一点
var regExp : RegExp = new RegExp('^[af][ .]?p[ .]?o|[P|p]*(OST|ost)*\.*\s*[O|o|0]*(ffice|FFICE)*\.*\s*[B|b][O|o|0][X|x]','i');当只有APO,FPO,A.p.o,F.P.O等模式时,这是有效的,但当城市是APOPKO时,它仍然匹配,这是不应该发生的。
我试着在[af][ .]?p[ .]?o之后给\b,但对我不起作用。有人能帮个忙吗?
提前谢谢。
发布于 2016-04-06 15:56:52
您可以使用
^([af][ .]?p[ .]?o|[Pp]*(OST|ost)*)\b\.*\s*[Oo0]*(ffice|FFICE)*\.*\s*[Bb][Oo0][Xx]请参阅regex demo
我把你的模式清理了一下,但是POI是^([af][ .]?p[ .]?o|[Pp]*(OST|ost)*)\b
^ - string( -a组的开始:匹配...[af][ .]?p[ .]?o --like字符串:[af]匹配a或f,然后[ .]?匹配可选的(1或0)空格或点,然后p匹配p,然后再次匹配[ .]?子模式,o匹配D28或<代码>D29时间(可能您指的是<代码>D30-1或0次),然后是<代码>D31或<代码>D32,再来一次0+ times.
\b -尾随单词边界https://stackoverflow.com/questions/36444658
复制相似问题