提问人:Herman Lewis 提问时间:10/31/2023 最后编辑:user3783243Herman Lewis 更新时间:11/11/2023 访问量:55
从两个字符串中捕获一串数字
Capture a string of digits from within two strings
问:
我正在尝试从一串数据中捕获一串数字。我尝试捕获的数字以 109 开头,后跟一个空格、2 位数字、一个逗号和一个空格。
我试图在第一行捕获; 在第二行;在第三行。44444444
44455555
44466666
1号线:109STAYPAY (HK) LTD,OCMT,HKD123,55, 44444444 99,99 ,RFB,WPAANNRFFB 2号线:109FLAYPAY (HK) LTD,OCMT,HKD456,79, 44455555 88,88 ,RFB,WPAANNRFEF
3号线:109HOLLPAY PTE LTD 44466666 77,77 ,RFB,WPAANNREXU
我尝试了以下表达式:
(?<=108)(.*)(?= [0-9][0-9],[0-9][0-9] ,)
但它并没有为我提供我正在寻找的信息。
答:
0赞
Reilas
11/11/2023
#1
利用周围的文本来标识值。
\d{8}(?= \d\d)
我想您甚至可以捕获和评估后续数字。
\d{8}(?= ((\d)\2),\1)
或者,使用捕获模式。
109.+?(\d{8})
上一个:正则表达式:带有多行文本的负前视
下一个:通过环顾查找形态的最后一次出现
评论
109 and is followed by a space
您的示例后面都没有空格。也不确定为什么你要在正则表达式中寻找,这是你的实际示例和代码吗?109
108
109
109.*? \K\d+(?= \d{2},\d{2} ,)
4444444
10[89]
\K