使用 C# 正则表达式替换字符串中的字符

Bic*_*yen 2 c# regex string

我想知道如何用另一个字符替换,数组括号内的[]字符,比如.. 我的字符串表达式如下:

属性[“412324 - PENNDOT I-95”,“类别”].值,属性[“412324 - PENNDOT I-95”,“类别”].代码

预期的输出应该是:

属性[“412324 - PENNDOT I-95”。“类别”].值,属性[“412324 - PENNDOT I-95”。“类别”].代码

Jay*_*Jay 5

var regex = new Regex(@"(?<=\[[^\[\]]*),(?=[^\[\]]*\])");
return regex.Replace(<your sample string>, ".");
Run Code Online (Sandbox Code Playgroud)

在正则表达式模式中, the 的左侧,是一个肯定的后视零宽度断言,这意味着必须有一个[,然后是零个或多个既不[]逗号也不是逗号的字符。

在逗号之后,一个积极的前瞻零宽度断言,这意味着可以有零个或多个字符既不是[也不是]必须有一个结束]

零宽度断言意味着模式必须在匹配文本之前或之后,但不是匹配的一部分。由于我们只匹配,我们的替换只是.