【问题标题】:notepad ++ replacement expression记事本++替换表达式
【发布时间】:2013-11-25 01:52:42
【问题描述】:

大家好,我真的需要一些帮助,我需要在文件中进行批量替换表达式 我有大量需要替换的网址。

我想搜索文件并将每个文件替换为适当的品牌锚链接,例如

http://www.example.com 变成了

<a href=”http://www.example.com”> http://www.example.com</a>

我需要使用多个文件中的大量 url 列表来执行此操作

我尝试了以下表达式 (1)|(2)|(3) (?1a)(?2b)(?3c) 但它不起作用。这超出了我的范围。任何帮助,将不胜感激。谢谢

【问题讨论】:

    标签: replace notepad++


    【解决方案1】:

    转到Search &gt; Replace 菜单(快捷键CTRL+H)并执行以下操作:

    1. 找到什么:

      http:\/\/www\.\w+\.com
      
    2. 替换:

      <a href="$0">$0</a>
      
    3. 选择单选按钮“正则表达式”

    4. 然后按Replace All in All Opened Documents

    您可以在regex101 上对其进行测试并查看结果。

    重要提示:用正则表达式匹配 URL 可能很复杂!我给了你一个最简单的例子,它只匹配像http://www.example.com 这样的 URL。如果您有更复杂的东西,请告诉我们,但会显示您的一些数据!有关此事的更多信息herehere

    更新

    让我们稍微复杂一点来匹配 yoursite.com/index.php?remainingurl

    找到什么:

        (?:https?:\/\/)?(?:www\.)?(\w+\.\w{2,6})(?:\/\w+\.\w+(?:\?\w+)?)?\b
    

    替换:

        <a href="$0">$1</a>
    

    【讨论】:

    • 不错的答案。只是添加我的贡献: $0 包含整个匹配的字符串。如果您必须获取子字符串,请使用括号捕获并使用 $1、$2...$N 标记。例如,如果您只想获取 url 域(对于 文本)。正则表达式:http:\/\/www\.(\w+)\.com => $1
    • 您好,感谢您的帮助,很好的回答。我已经设法让它工作了,因为它是大量文档中的一些特定 url 我仍然使用 (site1)|(site2)|(site3)... 在查找字段中并替换为 $0 正如你所建议的,它奏效了。非常感谢,不胜感激。
    • 我遇到了一个小问题,它可以正常工作,直到有一个带有问号的php url的网站。例如yoursite.com/index.php?remainingurl 任何想法如何找到并用类似的表达式替换这些?谢谢
    猜你喜欢
    • 2013-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-19
    相关资源
    最近更新 更多