【发布时间】:2017-01-15 04:36:18
【问题描述】:
我的输入是:<span question_number="18"> blah blah blah 1</span><span question_number="19"> blah blah blah 2</span>
我希望我的正则表达式匹配这个
<span question_number="somenumber">xxxx</span> 模式
并且期望的输出是 1.somenumber 2.xxxx
我写了一个简单的解决方案,可以覆盖 <span question_number="18"> blah blah blah 1</span> <span question_number="19"> blah blah blah 2</span>
注意:它们在不同的行
输出为:18、blah blah blah 1 和 19,blah blah blah 2
但是当输入是<span question_number="18"> blah blah blah 1</span><span question_number="19"> blah blah blah 2</span>
在同一行
我的输出是18,blah blah blah 1</span><span question_number="19"> blah blah blah 2
我怎样才能绕过这个问题?
更新:
正则表达式:/\<span question_number=(?:\")*(\d*)(?:\")*>(.*)<\/span>/ig
测试输入:
case1 -> 两行代码 <span question_number="54">often graces doorways tied into ropes called</span> <span question_number="54">often graces doorways tied into ropes called <i>ristras</i>.</span>
case2 -> 一行代码<span question_number="54">often graces doorways tied into ropes called</span><span question_number="54">often graces doorways tied into ropes called <i>ristras</i>.</span>
更新2:
这不是 dom ,它只是我要处理的纯文本。
更新3: 所以我关于正则表达式的问题解决了,现在我有一个关于比较正则表达式或 dom 操作之间的处理速度的问题?怎么可能实施这样的测试?
【问题讨论】:
-
为什么要用正则表达式匹配 HTML? stackoverflow.com/questions/590747/…
-
我敦促您在为时已晚之前阅读stackoverflow.com/questions/1732348/…
-
请,请:不要使用正则表达式来解析 HTML! (见stackoverflow.com/a/1732454/709439 :-)
-
改变你的问题以使其他人的努力无效是不礼貌的。在这种特殊情况下,当您突然改变主意并现在想要一个 Ruby 解决方案时,很多人已经投入了大量工作来解决您的 JavaScript 问题。单独问一个关于 Ruby 的问题会更有礼貌,而不是把人们已经投入到你的 JavaScript 问题中的所有辛苦工作都扔掉。
-
请不要在您的问题(或答案)中使用“编辑”或“更新”标签,因为这会导致难以阅读的文本。相反,将更改合并到文本中,就好像它们最初在那里一样。如果需要,我们可以看到发生了什么变化。另外,请阅读格式帮助,这有助于我们了解您的要求。我们越容易阅读,就越能快速准确地为您提供帮助。
标签: javascript ruby regex