在elisp中通过`re-search-forward`使用正则表达式

时间:2018-11-18 02:51:57

标签: elisp

我想使用函数re-search-forward

搜索正则表达式

当我尝试使用页面中的示例时 此处:https://www.emacswiki.org/emacs/RegularExpression#toc1

具体来说,用于搜索20个字母或更多字母的单词的正则表达式\w\{20,\}出现错误。

在这里,我将光标放在右括号后的Lisp缓冲区中,然后按C-x C-e进行评估。

但是,当我通过以下方式使用Regexp I-search时, C-M-s突出显示了正确的单词。

这是为什么?

enter image description here enter image description here

1 个答案:

答案 0 :(得分:3)

此正则表达式:

\w\{20,\}

用双引号elisp字符串表示,如下所示:

"\\w\\{20,\\}"

反斜杠在字符串的双引号读取语法中是特殊的,而在regexp语法中是特殊。因此,如果正则表达式使用反斜杠,则需要将其加倍。