kate-正则表达式-查找并将部分URL从href替换为“>

时间:2019-03-15 16:04:43

标签: html regex replace regex-group kate

我有许多要修改的.html和.txt文件中包含的链接。我主要使用Kate作为文本编辑器,因此我用kate标签问了这个问题。以下是链接示例:

<li>
  <a href="http://sk1project.org/">
            sK1
        </a> is an open source vector graphics editor similar to CorelDRAW, Adobe Illustrator, or Freehand. First of all sK1 is oriented for PostScript processing. UniConvertor is a universal vector graphics translator. It uses sK1 engine to convert
  one format to another. Development of the import/export modules for this program goes through different stages, quality and feature coverage are different among formats.
</li>


<li>
  <a href="http://tango.freedesktop.org/Tango_Desktop_Project">
            The Tango Desktop Project
        </a> exists to help create a consistent graphical user interface experience for free and Open Source software. While the look and feel of an application is determined by many individual components, some organization is necessary in order to
  unify the appearance and structure of individual icon sets used within those components. The Tango Desktop Project defines an icon style guideline to which artists and designers can adhere. A sample implementation of the style is available as an icon
  theme based upon a standardized icon naming specification. In addition, the project provides transitional utilities to assist in creating icon themes for existing desktop environments, such as GNOME and KDE.
</li>

我发现 Regular expression to extract URL from an HTML link | python-从HTML链接提取URL的正则表达式-堆栈溢出,所以我知道如何使用href=[\'"]?([^\'" >]+">)从href捕获到“>,但是我不知道如何将文本从href保留为”到>,然后添加以下文本:“ rel =“ nofollow noopener noreferrer”>”。

我在下面看到最终结果:

<li>
  <a href="http://sk1project.org/" rel="nofollow noopener noreferrer">
            sK1
        </a> is an open source vector graphics editor similar to CorelDRAW, Adobe Illustrator, or Freehand. First of all sK1 is oriented for PostScript processing. UniConvertor is a universal vector graphics translator. It uses sK1 engine to convert
  one format to another. Development of the import/export modules for this program goes through different stages, quality and feature coverage are different among formats.
</li>


<li>
  <a href="http://tango.freedesktop.org/Tango_Desktop_Project" rel="nofollow noopener noreferrer">
            The Tango Desktop Project
        </a> exists to help create a consistent graphical user interface experience for free and Open Source software. While the look and feel of an application is determined by many individual components, some organization is necessary in order to
  unify the appearance and structure of individual icon sets used within those components. The Tango Desktop Project defines an icon style guideline to which artists and designers can adhere. A sample implementation of the style is available as an icon
  theme based upon a standardized icon naming specification. In addition, the project provides transitional utilities to assist in creating icon themes for existing desktop environments, such as GNOME and KDE
</li>

如何在Kate中使用正则表达式完成此操作?

谢谢。

1 个答案:

答案 0 :(得分:2)

不建议使用正则表达式解析html,但是由于您使用的是Kate编辑器,因此可以使用此正则表达式使用<a属性捕获href标签,

(<a\s+.*?href=(['"]?)\S*\2)

并替换为此,

\1 rel="nofollow noopener noreferrer"

我从没使用过Kate编辑器,所以不确定\1是否可以工作还是$1

让我知道这是否可行。

Demo