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

如何使用正则表达式移除数字序列中第一个出现的「.」字符?

解决方案

方案1:通用捕获组方案(兼容所有正则引擎)

核心匹配正则:^([^.]+)\.
替换值:$1(部分编程语言/工具中使用\1)

规则说明

  • ^ 匹配字符串起始位置
  • ([^.]+) 为第1个捕获组,匹配第一个.之前所有非.的字符
  • \. 匹配你需要删除的第一个.字符
    替换时直接用捕获组1的内容覆盖匹配到的整体内容,即可保留前缀字符、删除首个.,后续所有内容不受影响。

示例效果

输入:2500155978.06.
匹配到的内容为:2500155978.
替换后得到:2500155978 + 未匹配的剩余内容06. = 最终结果 250015597806.

方案2:直接匹配首个.(仅支持可变长度后视的正则引擎,如Python re、.NET、Java 9+)

核心匹配正则:(?<=^[^.]*)\.
替换值:空字符串

规则说明

(?<=^[^.]*)为正向后视断言,限定当前位置之前是字符串开头+若干非.字符,也就是仅匹配整个字符串中第一个出现的.,直接替换为空即可完成需求。

常见场景实现示例

  • JavaScript 示例:
const str = '2500155978.06.';
const result = str.replace(/^([^.]+)\./, '$1');
console.log(result); // 输出 250015597806.
  • Python 示例(两种写法都可):
import re
str = '2500155978.06.'
# 通用捕获组写法
result1 = re.sub(r'^([^.]+)\.', r'\1', str)
# 后视匹配写法
result2 = re.sub(r'(?<=^[^.]*)\.', '', str)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 15:48:01