我正在运行一个类,其工作是解析 html 文档以获取一些信息。
在我的一种情况下,我最终得到了这个字符串:
"\r\n First Name:"
我想格式化字符串,以便我只有“名字:”,所以我这样做了:
string firstName = node.InnerText;
firstName = firstName.Replace(" ", "");
firstName = firstName.Replace("\\r", "");
firstName = firstName.Replace("\\n", "");
firstName.Trim();
但我最终还是得到了和以前一样的字符串。我是 mvc-app 的新手,我认为这可以完成这项工作,但事实并非如此。我怎样才能实现我的目标?
谢谢!
* 编辑 *
我已经修改了我的代码以向您展示我到目前为止所做的事情,因为我想通知所有人第一行有效,但其余部分无效。我最终得到了这个字符串:
"\r\nFirst Name:"
最佳答案
您需要将结果分配回给 firstName,因为字符串是不可变的,string.Replace
将不会更改原始字符串,而是它将返回一个新字符串。
firstName = firstName.Replace(" ", "");
firstName = firstName.Replace("\r", "");
firstName = firstName.Replace("\n", "");
顺便说一句,你可以使用 string.Trim :
string firstName = "\r\n First Name:";
firstName = firstName.Trim();
因为 String.Trim
会删除字符串开头和结尾的所有空格,包括 \r
和 \n
编辑:
您需要使用单反斜杠 \r
而不是双反斜杠 \\r
关于c# - 删除字符串中的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15637056/