我很紧张,因为那里有很多RegEx帖子。但是我也要求最好的方法,所以我要冒险(如果我把工作搞砸了,那就完全期待一个代表...)
我已经获得了重新格式化的列表。 120个问题和答案(共240个标签集)。 * glark *我需要做的就是让标签之间的文字成为一个链接,如下所示:
<li>do snails make your feet itch?</li>
必须成为
<li><a href="#n">do snails make your feet itch?</a></li>`
这不是JAVASCRIPT / PHP RegEx问题。 JUST RegEx,我可以进入我的IDE的搜索/替换字段。我可能会尝试使用PERL进行批量替换以插入'n'
变量,以便链接正确指向。
我知道你会问'你是否可以使用PERL,为什么不使用整个shebang?'这是一个有效的问题,但我想更多地使用RegEx来获得像这样的大型列表的功能。加上我的PERL技能最好是粗略的...除非你想要解决这个问题......:嘿嘿嘿。
如果论坛的这一部分无法回答或出错,请接受我的道歉并指出正确的方向。
非常感谢!WR!
答案 0 :(得分:3)
<li>(.*?)</li>
<li><a href="#n">$1</a></li>
答案 1 :(得分:3)
您可以分两步完成。
<li>
<li><a href="#n">
</li>
</a></li>
醇>
或者你可以尝试变得聪明,并将它融为一体。这是Perl语法中的替换命令($ 1引用括号中匹配的内容)。
s,<li>(.*)</li>,<li><a href="#n">$1</a></li>,
当你在那里时,很容易用一个会增加n
的表达式替换替换模式的第二部分
s,<li>(.*)</li>,q{<li><a href="#} .++$n . qq{">$1</a></li>},e
了解如何从命令行运行此命令:
echo '<li>do snails make your feet itch?</li>' |
perl -pe 's,<li>(.*)</li>,q{<li><a href="#} .++$n . qq{">$1</a></li>},e'
<li><a href="#1">do snails make your feet itch?</a></li>