-8
static void Main(string[] args)
{

    string t="<html>  <head> <link rel='stylesheet' type='text/css' href='http://www.taxmann.com/css/taxmannstyle.css' />  </head>  <body ><html><body style='background-color:Black;font-size:30px;color:#fff;'><html>\r\n<head><link href='http://www.taxmann.com/TaxmannWhatsnewService/Styles/style.css' rel='stylesheet' type='text/css' />\r\n<title>Finmin Aims to Halve Net Bad Loans of PSBs</title>\r\n<style type=\"text/css\">\r\nbody{font-family:Arial, Helvetica, sans-serif; font-size:12px; line-height:18px;text-align:justify;}\r\n.w100{width:100%;}\r\n.fl-l{float:left;}\r\n.ffla{font-family:Arial, Helvetica, sans-serif;}\r\n.fs18{font-size:18px;}\r\n.mart10{margin-top:10px;}\r\n.fcred{color:#c81616;}\r\n.tc{text-align:center;}\r\n.tu{text-transform:uppercase;}\r\n.lh18{line-height:18px;}\r\n</style>\r\n</head>\r\n<body>\r\n<div class=\"w100 fl-l\">\r\n<div class=\"w100 fl-l ffla fs18 mart10 fcred ttunderline tc tu\">Finmin Aims to Halve Net Bad Loans of PSBs</div>\r\n\r\n<div class=\"w100 fl-l lh18 mart10\">Concernedover the rising bad loans of the state-run banks, the finance ministry is working out a plan to reduce their net non-performing assets (NPAs) to 1% of net advances by the end of the current financial year.</div>\r\n\r\n</div>\r\n</body>\r\n</html>\r\n</body></html></body></html>"



    string resultValue = t.Replace("<html><head> <link rel='stylesheet' type='text/css' href='http://www.taxmann.com/css/taxmannstyle.css' /></head> <body ><html>", " <html><head> </head> <body ><html>");  //its not working

    Console.WriteLine(resultValue);

} 

这是我的代码但我无法替换resultValue

4

2 回答 2

2

Replace方法采用精确的字符串。

在您的原件中,您有:

 />  </head>

但是在替换字符串中你有:

 /></head>

空格很重要。

在这种情况下,由于这是 HTML,我建议使用 HTML 解析器而不是string.Replace.

两个流行的解析器是HTML Agility PackCsQuery。您可以使用其中任何一个来读取 HTML 并重写您需要的内容。

于 2013-04-09T08:05:28.460 回答
2

您使用它的方式很好,但它与您的输入字符串不匹配,因为短语<html> <head><html><head>. 空格使替换失败。

您可以使用正则表达式来匹配标签之间允许空格的位置,或者您可以删除之后的所有空格>,然后替换该值。

于 2013-04-09T08:05:36.010 回答