正则表达式 \d{3}-(\d{2}-\d{2}|\d{4}) 是什么意思?

broker_chengchaoji 2006-01-14 11:18:38
\d{3}-(\d{2}-\d{2}|\d{4})

“Phone: 555-1234” 可以通过验证。
为什么“PHONE”加在前面也可以?

“Phone: 555-12”为什么不可以?

谢谢
...全文
1709 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
deepbluesea 2006-01-16
  • 打赏
  • 举报
回复
\d{3}-(\d{2}-\d{2}|\d{4})
如果不是全匹配,“Phone: 555-1234”可以的

^\d{3}-(\d{2}-\d{2}|\d{4})$ 的话“Phone: 555-1234”就不可以了
柯本 2006-01-14
  • 打赏
  • 举报
回复
它应该匹配
ddd-dd-dd 或ddd-dddd (d为0-9)
其中后面的dd-dd或ddd-dddd可以通过子串取到
如果是全匹配,“Phone: 555-1234” 应该不可以,但具体要看你的验证程序是如何写的,
如果是匹配字串,“Phone: 555-1234"是可以的,因为它匹配了555-1234
Phone: 555-12是不可以.因为它不含上面二种字串之一


vcmute 2006-01-14
  • 打赏
  • 举报
回复
\d{3}表示前面三个数字,
|表示或的意思,()表示中间的为子字符串
(\d{2}-\d{2}|\d{4})即两个数字-两个数字
或四个连续数字
vcmute 2006-01-14
  • 打赏
  • 举报
回复
-就是减号
broker_chengchaoji 2006-01-14
  • 打赏
  • 举报
回复
括号中的“-”是什么意思?

broker_chengchaoji 2006-01-14
  • 打赏
  • 举报
回复
\d{3}-(\d{2}-\d{2}|\d{4})

“Phone: 555-1234” 为什么加上PHONE还可以通过验证?

16,744

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧