我要将 HTML 代码转换为纯文本。但是会有很多额外的换行和空格,该如何去除它们呢?
string new_string = Regex.Replace(orig_string, @"\s", "")
会删除所有空格。
string new_string = Regex.Replace(orig_string, @"\s+", " ")
只会将多个空格合并为一个。
我假设你想要
如果是这样,你可以使用以下代码:
resultString = Regex.Replace(subjectString, @"( |\r?\n)\1+", "$1");
这将保留原始的空白符类型,同时还可以正确地保留Windows换行符。如果您还想将多个制表符“压缩”为一个,请使用
resultString = Regex.Replace(subjectString, @"( |\t|\r?\n)\1+", "$1");
要将一串换行符和空格(任意数量)压缩成一个单独的换行符,请使用
resultString = Regex.Replace(subjectString, @"(?:(?:\r?\n)+ +){2,}", @"\n");
\n \n \n \n \n \n \n \n \n \n
返回的结果会混合空格。 - Shisoft\n\n \n\n \n\n \n
)转换为 "\n"。注意:"\n"之间可能会有多个空格。 - Shisoft//define what you want to remove as char
char tb = (char)9; //Tab char ascii code
spc = (char)32; //space char ascii code
nwln = (char)10; //New line char ascii char
yourstring.Replace(tb,"");
yourstring.Replace(spc,"");
yourstring.Replace(nwln,"");
//by defining chars, result was better.
您可以使用Trim()函数来去除空格和回车。在HTML中,空格并不重要,因此您可以通过使用System.String类中的Trim()方法来省略它们。
Trim
可能有用,但它不能完成整个工作。 - Alan Moore