我有一定的模式
XXX >>> [a,b,c]
在一大块文本中,我想在匹配的文本中替换所有“,”只用“ . ”,所以我得到
XXX >>> [a . 湾C]
Is it possible to do it with Regex only (c# flavor) and if yes how?
更新:
我不想在整个文本中用点替换所有逗号!它类似于这个问题,但不幸的是不一样:Ruby Regex - Need to replace every occurrence of a character inside a regex match我没有问题确定由
-
前缀"XXX >>> ["
需要替换逗号的 -
目标主体,例如"a, b, c, d"
-
后缀"]"
解决方案: (?<=XXX >>> \[|\G)([^][,]*),(?=[^][]*\])
技巧是
-
\ G.
-
匹配组声明
2 回答
我会分两个阶段做这件事 . 首先, grab 包含要替换的逗号的行的部分:
这将捕获两个组:
XXX >>>
部分和[a, b, c]
部分 . 然后,在第二部分上简单替换逗号 - >句点 . 最后,将两个部分连接在一起 .您可以使用此正则表达式进行搜索:
并使用
"$1."
进行更换 .RegEx Demo 1
RegEx Demo 2