Regex:如何替换匹配模式中的字符

本文关键字:模式 字符 替换 何替换 Regex | 更新日期: 2023-09-27 18:26:05

我有一个特定的模式

XXX>>[a,b,c]

在一大块文本中,我想用say"."替换匹配文本中的所有",",所以我得到

XXX>>[a.b.c]

是否可以只使用Regex(c#风味),如果可以,如何

更新:

我不想把整篇文章中所有的逗号都用点代替!这与这个问题类似,但不幸的是不一样:Ruby Regex-需要替换正则表达式匹配中出现的每一个字符我识别出由组成的图案没有问题

  • 前缀"XXX>>["
  • 需要替换逗号的目标正文,例如"a、b、c、d"
  • 后缀"]"

解决方案:(?<=XXX >>> '[|'G)([^][,]*),(?=[^][]*'])

技巧是

  • ''G
  • 匹配组语句

Regex:如何替换匹配模式中的字符

您可以使用此正则表达式进行搜索:

(?<=XXX >>> '[|'G)([^][,]*),(?=[^][]*'])

并使用"$1."进行更换。

  • RegEx演示1
  • RegEx演示2

我将分两个阶段进行。首先,抓取行中包含要替换的逗号的部分:

(XXX's>>>'s)('[[^']]*'])

这捕获了两组:XXX >>>部分和[a, b, c]部分。然后,在第二部分中简单地替换逗号->句点。最后,将这两部分重新连接在一起。