1

我有一个包含以下内容的字符串:

value="'+c+'"

并希望使用正则表达式来摆脱单引号、加号以及它们之间的任何内容:

value=""

这就是我正在尝试的:

responseFromServer = Regex.Replace(responseFromServer, @"=""'\+.+?\+'""", "", RegexOptions.Singleline);

解决方案:

responseFromServer = Regex.Replace(responseFromServer, "'[+].*[+]'", "", RegexOptions.Singleline);
4

3 回答 3

0
string afterReplace = Regex.Replace(responseFromServer, @"'\+[^+]*\+'", "", RegexOptions.Singleline)
于 2012-10-25T18:40:38.843 回答
0

这是在给定示例中匹配所有'+和之间的表达式:+'

'[+].*[+]'

如果你也想搭配look behind和look ahead,你可以试试:

(?<==")'[+].*[+]'(?=")

="在比赛前和比赛"后检查。

您还可以扩展它以查找 之前的值名称=,我希望它会发生变化。取决于这些值名称可以包含的确切内容。

于 2012-10-25T19:02:03.133 回答
0

我认为这会奏效。

Regex.Replace(responseFromServer, @"(')(\\+)((?:[a-z][a-z0-9_]*))(\\+)(')", "", RegexOptions.Singleline)
于 2012-10-25T19:09:13.530 回答