首页 > 解决方案 > C# 将包含 \" 的字符串替换为 "

问题描述

我有一个字符串如下。

"alphabet": "dtSearch Alphabet File\n\n[Letters] // Original letter, lower case, upper case, unaccented\n""ReserveChar": "{\"Datasource\":[{\"text\":\"!\",\"value\":\"!\"},{\"text\":\"^\",\"value\":\"^\"},{\"text\":\"|\",\"value\":\"|\"},{\"text\":\"$\",\"value\":\"$\"}],\"macro\":\"@\",\"fuzzychar\":\"%\",\"stemming\":\"~\",\"phonic\":\"#\",\"shynonyms\":\"&\",\"wightchar\":\":\",\"matchdigitchar\":\"=\"}

我想如下替换它。

"alphabet": "dtSearch Alphabet File\n\n[Letters] // Original letter, lower case, upper case, unaccented\n","ReserveChar": "{"Datasource":[{"text":"!","value":"!"},{"text":"^","value":"^"}],"macro":"@","fuzzychar":"%"}

请注意,字符串中有两个部分。

注意:我正在迁移数据,因此无法从代码端(JavaScript)解决这些问题。我必须在数据库中插入正确的数据。所以代码将按原样工作。

基本上,我想替换 ReserveChar 中的 \ (反斜杠)而不是字母表。所以我想要将 \" 替换为 " 的模式。

以下是我到目前为止所做的。

(new Regex(@"\\")).Replace(newstring, "");

上面的代码可以正常工作,但也替换了字母表中的 \。

我应该做哪些改变?

如果它可以解决问题,请建议除正则表达式之外的解决方案。

标签: c#regexstringreplace

解决方案


推荐阅读