关于在 gedit 中使用 Regex Search & Replace 的问题

Tim*_*Tim 10 gedit python regex

我正在尝试使用gedit的Regex Search & Replace 插件

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

    [0-9]\{2,3\}
    
    Run Code Online (Sandbox Code Playgroud)

    但它与它应该的目标不匹配,例如“22”。

  2. 我想准确地找到一个单词“Notes”,所以我认为它会是

    \<Notes\> 
    
    Run Code Online (Sandbox Code Playgroud)

    但它也不起作用。

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

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

Kee*_*ook 14

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

[0-9]{2,3}
Run Code Online (Sandbox Code Playgroud)

你的第二个例子应该是:

\bNote\b
Run Code Online (Sandbox Code Playgroud)

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

(.*)([0-9]{3}.*)
Run Code Online (Sandbox Code Playgroud)

替换为:

\1p\2
Run Code Online (Sandbox Code Playgroud)

有关更多详细信息,请参阅pydoc re将告诉您有关 Python 正则表达式语法的内容或在线文档