是否有正则表达式来删除“。”的第一个实例?

Posted

技术标签:

【中文标题】是否有正则表达式来删除“。”的第一个实例?【英文标题】:Is there a RegEx to remove the first instance of "."? 【发布时间】:2021-12-11 07:19:45 【问题描述】:

我正在尝试删除第一个点“。”从这样的数字序列中:2500155978.06.打算拥有250015597806.

通常,我会尝试仅匹配我需要的内容并稍后替换,即匹配所有“。”然后删除第一个匹配项。我一直在尝试使用^[^.]+,但我只得到了第一个“。”的数字。

考虑过使用具有正向前瞻功能的捕获组,但它无济于事(仍在学习 RegEx)。

提前感谢您的时间和帮助!

【问题讨论】:

【参考方案1】:

你可以使用

^(\d+)\.

并替换为$1,占位符指向存储在组 1 中的值。

请参阅regex demo。 详情

^ - 字符串开头 (\d+) - 第 1 组(后来用替换模式中的 $1 指代):一位或多位数字 \. - 一个点。

【讨论】:

以上是关于是否有正则表达式来删除“。”的第一个实例?的主要内容,如果未能解决你的问题,请参考以下文章

从查询字符串中删除一个参数的正则表达式

JS正则表达式详解

第一个正则表达式实例匹配在第一行不匹配?

是否有用于反向引用的大写/小写版本的正则表达式替换术语? [复制]

正则表达式删除第一个单词并使用 c# 将第二个单词的第一个字符大写

如何使用正则表达式删除 std::wstring 中特定短语的所有实例?