Jus*_*son 33 c# string replace escaping
我很难问这个,但是,由于某种原因,我无法让这个工作(当天晚些时候,是的,这是我的借口).
假设我有这个字符串:
s = "John's book."
Run Code Online (Sandbox Code Playgroud)
使用replace
对象String中的方法,我想将其转换为:
s = "John\'s book."
Run Code Online (Sandbox Code Playgroud)
我本来希望这段代码能给我我想要的东西:
s = s.Replace("'", "\\'")
Run Code Online (Sandbox Code Playgroud)
但是,这导致:
"John\\'s book."
Run Code Online (Sandbox Code Playgroud)
Bee*_*Guy 67
这样做,所以你不必考虑它:
s = s.Replace("'", @"\'");
Run Code Online (Sandbox Code Playgroud)
只是为了展示另一种可能的解决方案,如果这与 MVC.NET (MVC5+) 有关:
var data= JSON.parse('@Html.Raw(HttpUtility.JavaScriptStringEncode(JsonConvert.SerializeObject(Model.memberObj)))');
Run Code Online (Sandbox Code Playgroud)
这允许您转义并将数据作为 JavaScript 传递给视图。关键部分是:
HttpUtility.JavaScriptStringEncode
Run Code Online (Sandbox Code Playgroud)