<p>
<b>Member Since:</b> Aug. 07, 2010<br><b>Time Played:</b> <span class="text_tooltip" title="Actual Time: 15.09:37:06">16 days</span><br><b>Last Game:</b>
<span class="text_tooltip" title="07/16/2011 23:41">1 minute ago</span>
<br><b>Wins:</b> 1,017<br><b>Losses/Quits:</b> 883/247<br><b>Frags/Deaths:</b> 26,955/42,553<br><b>Hits/Shots:</b> 690,695/4,229,566<br><b>Accuracy:</b> 16%<br>
</p>
我想1,017
。它是标签后面的文本,其中包含文本Wins:
。
如果我使用正则表达式,它将是[/<b>Wins:<\/b> ([^<]+)/,1]
,但如何与Nokogiri和XPath做到这一点? 或者我应该更好地解析正则表达式的这一部分页面?
当任务非常简单时,和/或当您控制HTML或XML的生成时,正则表达式很好。当这代人离开你的控制时,它变得更加冒险,因为文件可能会意外改变,导致更复杂的正则表达式和/或支持代码。解析器往往会避免这种情况的发生,从而使得长期支持变得更容易。根据我自己的经验,不得不清理和维护其他人的代码,通过切换到一个好的分析器,同时简化它,这在生产环境中非常合适,我能够大幅度减少基于正则表达式的代码。 –
虽然可以编写复杂的正则表达式来处理更多情况,但它也变成了一项开发和维护任务,导致了熵设置。重要的是要记住,尽管可以使用特定工具完成某些工作,使用另一个可能会更好。正则表达式常常是这种情况;这是性感和男子气概使用,但这些不是很好的理由选择它。相反,使用正则表达式当它显然是更短,更简单的路径以达到期望的结果时,则需要长期支持。 –
@锡匠,下次我写一个关于解析的问题时,我会补充* pleeease不要开始holywar,所以它充满了它,我们不需要更多的空论辩论的副本,以防止它在答案中出现。但无论如何感谢您的想法。 – Nakilon