You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

正则表达式提取数字与逗号间内容的问题求助

解决方案

你需要提取数字结束位置到逗号之间的内容,可以使用这个正则表达式:

(?<=\d)(.*?)(?=,)

正则解释

  • (?<=\d):正向后顾断言,确保匹配内容的前一位是数字,避免捕获字符串开头的非数字部分
  • (.*?):非贪婪模式匹配任意字符(除换行符),精准抓取数字后到逗号前的所有内容
  • (?=,):正向前瞻断言,确保匹配内容的后一位是逗号

测试验证

针对你的示例输入,匹配结果完全符合预期:

  • 55B/2, → 捕获 B/2
  • 171-1, → 捕获 -1
  • 6"C", → 捕获 "C"
  • 26D, → 捕获 D
  • 8/1, → 捕获 /1
  • 83, → 无匹配内容,返回 null/empty

代码示例(Python)

import re

test_strings = [
    " 55B/2,",
    " 171-1,",
    ' 6"C",',
    " 26D,",
    " 8/1,",
    " 83,"
]

regex_pattern = re.compile(r'(?<=\d)(.*?)(?=,)')

for s in test_strings:
    match_result = regex_pattern.search(s)
    output = match_result.group(0) if match_result else 'null/empty'
    print(f"{s} --> {output}")

运行这段代码会直接输出你期望的结果。

内容的提问来源于stack exchange,提问作者Ivan Klemenko

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 15:42:40