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

如何用正则表达式统计字符串开头的零?re.search返回None求助

解决开头数字0的统计问题

你的正则表达式^["0"]+出错的原因很明确:这个模式是匹配字符串开头的双引号或数字0的连续序列,但你的输入是纯数字字符串,开头没有双引号,所以完全匹配不到,返回None。

正确的正则写法

直接用^0+就能精准匹配开头连续的0,代码示例:

import re

num_str = "00012345"
result = re.search(r'^0+', num_str)
if result:
    zero_count = len(result.group())
    print(f"开头0的数量:{zero_count}")
else:
    print("字符串开头没有0")
  • ^:锚定字符串的起始位置
  • 0+:匹配一个或多个连续的数字0

非正则的替代方案

如果不想用正则,直接遍历计数更直观:

num_str = "00012345"
zero_count = 0
for char in num_str:
    if char == '0':
        zero_count += 1
    else:
        break  # 遇到非0字符就停止计数
print(f"开头0的数量:{zero_count}")

内容的提问来源于stack exchange,提问作者Оксана Нефедова

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.16 03:39:53