关于在 gedit 中使用正则表达式搜索和替换的问题

关于在 gedit 中使用正则表达式搜索和替换的问题

我正在尝试使用正则表达式搜索和替换插件的 gedit。

  1. 我想搜索重复 2 或 3 次的数字,所以我认为正则表达式是

    [0-9]\{2,3\}
    

    但它与应有的目标不符,例如“22”。

  2. 我想找到一个单词“Notes”,所以我想它会是

    \<Notes\> 
    

    但它也不起作用。

  3. 如何在任意三位数字的字符串“[0-9][0-9][0-9]”前面添加“#”?例如“123”变成“#123”。

我想知道我是否犯了什么错误?我正在使用基本正则表达式。插件中使用了什么类型的正则表达式?我如何才能学习如何使用这个插件?

答案1

您不需要转义正则表达式字符。您的第一个例子应该是:

[0-9]{2,3}

你的第二个例子应该是:

\bNote\b

对于第三种情况,您需要匹配前后内容,然后使用反向引用:

(.*)([0-9]{3}.*)

替换为:

\1p\2

有关更多详细信息,请参阅pydoc re将向您介绍 Python 正则表达式语法,或在线文档

答案2

正如 Kees 所说,该插件使用 Python 的re模块语法,它还具有如何在 python 网站上。

我还建议安装并试用科多兽 安装 kodos
它是一个 Python 正则表达式测试器(它称自己为“调试器”),并包含一个快速参考正则表达式表以及re模块文档的简短版本。

regular-expression.info 站点对正则表达式元语言的不同实现进行了很好的比较。其中还有一节关于 Python 风格的内容。

相关内容