【发布时间】:2014-05-19 02:43:37
【问题描述】:
好的,这是我的问题:
<div class="anime_info"><div class='ctdn'>Ep 7 - <span class="cd_day">3</span>d <span class="cd_hr">10</span>h <span class="cd_min">30</span>m </div>
如何使用正则表达式从字符串中取出 7。我尝试休耕:
System.Text.RegularExpressions.Regex.Matches(line,@"[^\d]")[0].Value
System.Text.RegularExpressions.Regex.Matches(line,@"\d")[0].Value
System.Text.RegularExpressions.Regex.Match (line, @">Ep (\d*)- <span").Groups [1].Value
System.Text.RegularExpressions.Regex.Match (line, @">Ep ([0-9]*)- <span").Groups [1].Value
System.Text.RegularExpressions.Regex.Match (line, @">Ep ([0-9])- <span").Groups [1].Value
System.Text.RegularExpressions.Regex.Match(line,@"\d").Value
全部失败。
请帮助并为我的英语不好感到抱歉。
【问题讨论】:
-
你应该解析 HTML 而不是使用正则表达式。
-
@SverriM.Olsen 您可以使用 HTML Agility Pack 来获取元素,但仍然需要 RegEx 从文本中获取数字。
-
@SteveWellens 当然。但是在使用正则表达式之前缩小搜索空间是个好主意:解析 HTML,找到您需要的文本节点,然后使用 simple 正则表达式获取数字。在 HTML 上使用正则表达式很少是一个好主意。
-
@SverriM.Olsen “在 HTML 上使用正则表达式很少是个好主意”是的,这就是我建议使用 HTML Agility Pack 的原因。