我得到在查询字符串中的以下格式的字符串:解析在C#中的特殊字符的字符串
Arnstung%20Chew(20)
我想把它转换只是Arnstung Chew
。
我该怎么做?
另外,如何确保用户不会传递脚本或任何有害的查询字符串?
我得到在查询字符串中的以下格式的字符串:解析在C#中的特殊字符的字符串
Arnstung%20Chew(20)
我想把它转换只是Arnstung Chew
。
我该怎么做?
另外,如何确保用户不会传递脚本或任何有害的查询字符串?
string str = "Arnstung Chew (20)";
string replacedString = str.Substring(0, str.IndexOf("(") -1).Trim();
string safeString = System.Web.HttpUtility.HtmlEncode(replacedString);
是的你是对的,但应该检查,以防止例外。 – 2011-03-06 14:06:40
只是一个小的改变..如果字符串如“Arnstung%20Chew(20)” – Refti 2011-03-06 14:14:34
然后我会使用'string replacedString = str.Substring(0,str.IndexOf(“(”));' – 2011-03-06 14:16:58
如果不知道输入文本中可能出现的变化,就不可能提供全面的答案。例如,总会有两个单词用空格分隔,后面跟着括号中的数字?或者还可能有其他变化?
我在我的Black Belt Coder网站上有很多解析代码,其中包括sscanf() replacement for .NET,这可能对您的情况有用。
谢谢我会检查它 – Refti 2011-03-06 14:58:52
定义非特殊字符 – 2011-03-06 13:59:58
是否要删除包含在括号或所有非文本字符中的所有内容? – 2011-03-06 14:00:32
实际上应该是“Arnstung%20Chew%20(20)”,字符串如何传递给查询字符串? – cusimar9 2011-03-06 14:01:08