查找数字后跟句点并替换句点的正则表达式是什么

What is the regex to find a number followed by a period and replace the period

我正在使用 PSPad,我正在尝试用管道替换第一个句点后跟 space,这样我就可以将管道用作分隔符。

我的数据有很多周期,所以我只想替换第一个。数据如下:

1. Wallbaum, H., S. Krank, 
3. Levinson, H.S., Highways, people,
4. Mercier, J., Equity, social justice, 
225. Lemp, J.D., et al., 
17. Chi, G. and B. Stone, 

由于数据总是以数字开头,后跟句点 & space 我认为最简单的做法是查找数字和 space。

我已经将正则表达式的 'Find' 部分算作 ^\d+\. 但我如何替换句点 & space 但保留数字?

如下使用捕获组

^(\d+)\.\s

并将其替换为第一个捕获的组 </code>,这将是数字。</p> <p><a href="https://regex101.com/r/tZ9eY4/1" rel="nofollow"><strong>Regex Demo and Explanation</strong></a></p> <ol> <li><code>^: 开头为

  • (\d+):匹配一个或多个数字并将其添加到第一个捕获的组中
  • \.:字面上匹配点,需要转义,因为它在正则表达式中有特殊含义
  • \s</code>(space):匹配一个 space。 <code>\s 还将匹配任何 space 个字符,例如制表符。
  • 我不知道 Pspad 是否支持后视,但如果支持,那么您也可以使用:

    \d+\K\.
    

    并简单地用 |.

    替换它

    Demo here.

    \K 是后视,用于进行匹配,但不包含在输出中。