如何提取字符串末尾的数字子串?结合实际文本与正则场景
提取指定行末尾的数字
待处理文本
Confirmation number 236GE46326Z21C05 Invoice details From Consolidated Text ABCD 1111 To Test Test Test 2222 Frequency
需求说明
已通过正则 (?<=From\r\n).+ 匹配到From下方的整行内容Consolidated Text ABCD 1111,需要从中提取末尾的数字1111。
解决方案
方案一:一步到位的正则
直接调整正则,同时定位行位置并捕获目标数字:
(?<=From\r\n).*\s(\d+)
(?<=From\r\n):定位到From换行后的内容起始处.*\s:匹配数字前的所有字符及最后一个空格(\d+):捕获连续的数字序列,也就是目标的1111,通过捕获组即可获取该值
方案二:分两步处理
- 用原正则
(?<=From\r\n).+提取From下方的整行文本 - 对提取到的文本使用正则
\d+$,匹配行尾的连续数字,直接得到1111
内容的提问来源于stack exchange,提问作者user9853666
相关产品推荐
相关产品推荐

