匹配带空格连字符的整数正则需求:提取小数前整数
单正则提取并格式化解决方案
正则表达式
(\d+)(?:\.\d+)?\w*\s*-\s*(\d+)(?:\.\d+)?\w*
替换模板
($1 - $2)
匹配逻辑
(\d+):捕获数字的整数部分(最终需要的核心内容)(?:\.\d+)?:非捕获组,匹配可选的小数部分(如.50),不参与输出\w*:匹配数字后的后缀文本(如sd)\s*-\s*:匹配前后允许任意空格的连字符,适配文本中的分隔格式- 后半段结构与前半段一致,捕获第二个数字的整数部分
效果示例
原文本行:sdfdsf 6.50sd - 76.50sd sdfsdfsd → 替换后输出:(6 - 76)
原文本行:1sd - 5766.34sd the ssdfsdf sdfsdf → 替换后输出:(1 - 5766)
内容的提问来源于stack exchange,提问作者Clewlow
相关产品推荐
相关产品推荐

