首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Regex验证地址字符串以不包含PO模式

Regex验证地址字符串以不包含PO模式
EN

Stack Overflow用户
提问于 2018-10-18 18:46:24
回答 1查看 3.1K关注 0票数 3

我在用户提供的地址字段上使用Laravel regex validation

我发现了多个有助于验证address字符串为有效posts (如herehere )的帖子,但我需要做相反的工作,并确保提供的字符串不是posts。

PS我不需要做任何的地址验证,只是想确保它除了一个邮箱。

我发现这条规则非常有用,因为它检查的是po方框号。

代码语言:javascript
运行
复制
/^\s*(.*((p|post)[-.\s]*(o|off|office)[-.\s]*(b|box|bin)[-.\s]*)|.*((p|post)[-.\s]*(o|off|office)[-.\s]*)|.*((p|post)[-.\s]*(b|box|bin)[-.\s]*)|(box|bin)[-.\s]*)(#|n|num|number)?\s*\d+/i

有人能帮我为这个或任何类似的词创建相反的表达式吗?

我怀疑我必须使用负前瞻性?!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-19 17:35:22

使用regex negative lookahead ?!进行求解

代码语言:javascript
运行
复制
/^(?!.*(?:(.*((p|post)[-.\s]*(o|off|office)[-.\s]*(box|bin)[-.\s]*)|.*((p |post)[-.\s]*(box|bin)[-.\s]*)))).*$/i

此规则不要求必须有邮箱号。

这些都将成为过去的例子:

代码语言:javascript
运行
复制
        "The Postal Road",
        "Box Hill",
        "123 Some Street",
        "Controller's Office",
        "pollo St.",
        "123 box canyon rd",
        "777 Post Oak Blvd",
        "PSC 477 Box 396",
        "RR 1 Box 1020",
        "Coop services",
        "65 Brook Ave Ste 1P",
        "pacific city",
        "orange county",
        "obox",
        "pbox",
        "party house",
        "p shorty",
        "something pacif pobo",
        "po helpkline box",
        "po ferrirs",
        "panther boxing",
        "box center",
        "post office",
        "Post",
        "porceline"

这些都不能通过验证。

代码语言:javascript
运行
复制
        "post office box",
        "POBOX",
        "po box",
        "POBox12234",
        "p o box",
        "P.O.Box",
        "HC73 P.O. Box 217",
        "P O Box125",
        "P. O. Box",
        "P.O. Box 123",
        "P.O. Box",
        "PO Box N",
        "PO Box",
        "PO-Box",
        "POBOX123",
        "Po Box",
        "Post Box 123",
        "Post Office Box 123",
        "Post Office Box",
        "p box",
        "p-o box",
        "p-o-box",
        "p.o box",
        "p.o. box",
        "p.o.-box",
        "po box 123",
        "po box",
        "po-box",
        "pobox",
        "pobox123",
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52880617

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档