首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >REGEX -使用Regex提取两个正向后向之间的9位数字值

REGEX -使用Regex提取两个正向后向之间的9位数字值
EN

Stack Overflow用户
提问于 2021-12-09 20:18:14
回答 2查看 47关注 0票数 2

我试图提取在查找值(Form & FMLA)之间出现的9位数字。这就是我用来瞄准我的查找背后的逻辑:(?<=Form)(\S\s*)(?<=FMLA).我能再加上一个部分来提取9位数吗?任何帮助都将不胜感激。谢谢!

Form (用于请病假)不将此文档与请休假的原始请求一起返回。请在预期返回工作的日期前5-7天将此文件发电子邮件或传真至人力资源服务中心。

第一节:由协理助理的姓名填写:副助理的职务名称: Associate;Location / Store # 123456789第二部分:由治疗该协理/病人的保健提供者完成:您的病人目前正在休假。回答,完全和完全,所有适用的部分。有几个问题寻求对病情、治疗等的频率或持续时间的回答。根据你的医学知识1、经验和对病人的检查,你的回答应该是你最好的估计。尽可能具体;“生存期”或“不确定”等术语可能不足以确定覆盖范围。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-12-10 15:01:30

您可以使用

代码语言:javascript
复制
(?s)(?<=Form.*?)\d{9}(?=.*?FMLA)

如果需要确保没有其他数字包围9位数字的子字符串,请使用

代码语言:javascript
复制
(?s)(?<=Form.*?)(?<!\d)\d{9}(?!\d)(?=.*?FMLA)

.NET regex演示。详细信息

  • (?s) -使.跨行边界匹配的RegexOptions.Singleline内联修饰符标志
  • (?<=Form.*?) -一个积极的查找,需要From,然后任何零或多个字符,尽可能少,立即在当前位置的左边。
  • \d{9} -九位数
  • (?=.*?FMLA) -一个积极的前瞻性,需要任何零或多个字符,尽可能少,然后FMLA子字符串。
票数 0
EN

Stack Overflow用户

发布于 2021-12-09 20:22:41

可以将此构造添加到regex以匹配9个连续数字:

代码语言:javascript
复制
([0-9]{9})

0-9是指0到9之间的任何数字

括号中的9意味着重复前面的9次

最后的regex表达式应该是:

代码语言:javascript
复制
(?<=Form)([\S\s]*)([0-9]{9})(?<=FMLA)
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70296200

复制
相关文章

相似问题

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