正则表达式在字符串中替换多个单词中的相同值

我想用引号替换字符串。

Mystring 如下所示:

var query = "SELECT abc.name,abc.owner-name FROM XXX";

我想按如下方式替换字符串。预期结果

SELECT abc."name",abc."owner-name" FROM XXX

我使用正则表达式代码如下:

Regex.Replace(query, $@"\b{column.ColumnName}\b", "\"" + column.ColumnName + "\"")

在替换以下字符串时获得结果 -

SELECT abc."name",abc."owner-"name"

name 是单独的字符串,owner-name 是单独的字符串。在尝试替换名称字符串时,另一个字符串会自动替换,因为第二个字符串中包含单词 name。

请让我知道是否有任何解决方案。提前致谢。


慕容森
浏览 320回答 2
2回答

呼唤远方

确保您正在转义不需要的字符串/字符\b[^-]name\b这里转义'-'内部[]并匹配“ name”,这是一个字符串使用正则表达式测试器来测试表达式。
打开App,查看更多内容
随时随地看视频慕课网APP