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

需求:提取含中间0的数字字符串中0起始末尾部分的正则表达式

正则表达式解决方案

问题分析

你尝试的正则0(\d+)$存在两个核心问题:

  1. 它仅捕获0后面的数字部分,不包含开头的0;
  2. 当目标字符串结尾是0时(比如2010),\d+要求至少匹配一个数字,导致无法匹配——不过这类字符串其实不符合你描述的%d00%d或%d0%d格式(你明确说明结尾是大于0的数字)。

正确正则方案

针对你描述的开头和结尾均为非0数字、中间含0的格式,要提取以0开头的末尾部分,使用以下正则即可:

0\d+$
  • 匹配逻辑:匹配字符串末尾的0,以及紧随其后的所有数字(因为你规定结尾是大于0的数字,所以\d+必然能匹配到内容)。
  • 示例验证:
    • 10001 → 匹配结果:01
    • 10013 → 匹配结果:013
    • 2011 → 匹配结果:011(符合你格式要求的正确示例)

如果你确实需要处理结尾为0的字符串(比如2010),且要提取从第一个0开始到结尾的全部内容,可以使用:

0.*$
  • 匹配逻辑:从第一个0开始,匹配到字符串结尾的所有内容。
  • 示例验证:2010 → 匹配结果:010

注意事项

如果你用捕获组方式获取结果,记得取整个匹配项,而不是原正则中(\d+)对应的捕获组1(后者仅捕获数字部分)。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 09:04:50