我正在为Windows Phonw 8开发一个GOOGLE TRANSLATE软件。我希望在特定class =“result_box”的span标记内获得“ALL SPAN TAGS的值” 在C#。
<html>
.
.
<span id="result_box" class="short_text" lang="pt">
<span class="hps">
Olá
</span>
<span class="">
.
</span>
<span class="hps">
oi
</span>
</span>
.
.
</html>
我尝试了这个,但它无法正常工作
html = e.Result;
var r = new Regex(@"(?i)<span[^>]*?>\s*", RegexOptions.IgnoreCase);
string capture = r.Match(html).Groups[1].Value;
MessageBox.Show(capture);
建议我REGEX。如果可能的话请给我全部功能,让我回复文字。
答案 0 :(得分:-1)
这是怎么回事?
Regex r = new Regex(@"<span[^>].*?>([^<]*)<\/span>", RegexOptions.IgnoreCase);
foreach (Match matchedSpan in r.Matches(html))
{
string capture = matchedSpan.Groups[1].Value;
MessageBox.Show(capture);
}
答案 1 :(得分:-2)
好的,因为@mason不喜欢上一个答案,这里有另一个方法:
XmlDocument htmlXML=new XmlDocument();
htmlXML.LoadXml(html);
foreach (XmlNode spanElement in htmlXML.SelectNodes("//span[@class='short_text']/span") ) {
MessageBox.Show(spanElement.InnerText);
}
记得添加
using System.Xml;