使用 C# 解析 Html 中的完整字符串
我有以下两个 html 示例 -
<a href="http://foo.com">User</a>: <a style="color:#333" href="http://foo.com/word"></a> blue elephant ·
<a href="http://foo.com">User</a>: <a style="color:#333" href="http://foo.com/word">@<b>word</b></a> blue elephant ·
我正在尝试使用 C# 解析它并将其放入 csv 文件中,并且它在一定程度上起作用,但是,当 html 中包含“@”符号时,它将保留 csv单元格空白或不包含前面带有“@”的单词。我想要获取的主要部分是@word blueelephant,但是这会带回一个空白单元格,而第一个html示例会根据需要返回blueelephant
。
我正在使用以下技术来执行此操作 -
string[] comm = System.Text.RegularExpressions.Regex.Split(content[1], "<a");
如何更改它以适用于第二个 html 示例?
I have the following two examples of html-
<a href="http://foo.com">User</a>: <a style="color:#333" href="http://foo.com/word"></a> blue elephant ·
<a href="http://foo.com">User</a>: <a style="color:#333" href="http://foo.com/word">@<b>word</b></a> blue elephant ·
I am trying to parse this using C# to put into a csv file and it is working to an extent however, when the html contains the '@' symbol in it, it will either leave the csv cell blank or not include the word with '@' before it. The main part I am trying to get is @word blue elephant
however this is bringing back a blank cell, whereas the first html example brings back blue elephant
as desired.
I am using the following technique to do this-
string[] comm = System.Text.RegularExpressions.Regex.Split(content[1], "<a");
How can I alter this to work for the second html example?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您想要使用适当的 HTML 解析器,例如 HTML 敏捷包 中的解析器情况(并将自己从调用克苏鲁之怒)
一些例子如何使用它
You want to use a proper HTML parser like the one in HTML agility pack in this situation (and save yourself from invoking the wrath of Cthulhu)
Some examples of how to use it