【问题标题】:Select (and remove) between tags without tags with Regular Expressions使用正则表达式在没有标签的标签之间选择(并删除)
【发布时间】:2015-06-11 18:38:56
【问题描述】:

我有以下例子:

[ame="http://www.google.com"]Google - a search engine[/ame]

我尝试过 [ame=.*](.*?)[/ame],它会选择标签和文本。

我需要选择 [ame][/ame] 标签之间的所有内容才能删除它。我使用使用正则表达式的 Sublime Text,但我不能只选择标签之间的文本而不是带有标签的文本。

【问题讨论】:

    标签: html regex tags


    【解决方案1】:

    你可以使用以下来匹配:

    (\[ame=[^\]]*\])(.*?)(\[\/ame\])
    

    并替换为$1$3

    DEMO

    【讨论】:

    • 将第一个* 设为非贪婪可能也很有用。
    • @acdcjunior 你是对的.. 使用负字符类更新.. 这将提供比使其不贪婪更好的性能:)
    • 是的,如果我选择 $2 我得到标签之间的文本是正确的,但我的问题是我不能在 Sublime Text 中使用 $ 符号,我需要一个正则表达式来选择标签之间的文本,我可以按删除按钮并继续下一个结果
    猜你喜欢
    • 1970-01-01
    • 2011-11-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-11-25
    • 1970-01-01
    • 2012-03-12
    相关资源
    最近更新 更多