[英]Unescaping strings in c# using string.Replace?
我在checkListBox中有一個字符串集合,我將此集合轉換為List<string>
。 在此轉換期間,我只能想象字符串是因為它們采用以下格式而被轉義:
<category title="FOO">
然后就變成了
"<category title=\"FOO\">
我需要將這些字符串用於比較,我嘗試了類似的東西
s.Replace(@"\""", @""""); <-------- trying to replace all \" with "
這甚至可能嗎? 如果是這樣,從字符串中的引號中刪除斜杠的正確方法是什么?
您可以使用Unescape
var str = "<category title=\"FOO\">";
var result = System.Text.RegularExpressions.Regex.Unescape(str);
Console.WriteLine(result); //<category title="FOO">
Console.ReadLine();
嘗試替換(“\\\\”“,”\\“”),甚至更好替換(“\\”,“”)
您可以使用Regex.Unescape方法來解決。 https://msdn.microsoft.com/en-us/library/system.text.regularexpressions.regex.unescape(v=vs.110).aspx
或者您可以使用Uri.UnescapeDataString方法。
https://msdn.microsoft.com/en-in/library/system.uri.unescapedatastring(v=vs.110).aspx
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.