2

我有几个使用 Emacs 的交互式搜索可以正常工作的正则表达式。它们是“^\”。和“^#”。他们在行首搜索句点和哈希。

我正在尝试编写一个交互式函数,在一行上搜索这些正则表达式,但我失败了。我的功能是

(defun line-contains (regexp)
  "Return true if the current line contains the passed regular expression."
  (save-excursion
    (beginning-of-line)
    (search-forward-regexp regexp (point-at-eol) t)))

当我打电话

((or (line-contains "^\.")
     (line-contains "^#"))

在下一行

if ($default) 

即使在交互式搜索调用时该行与正则表达式不匹配,它也会返回 true。我不确定我做错了什么。

4

1 回答 1

3

您必须像这样转义字符串文字中的反斜杠

((or (line-contains "^\\.")
     (line-contains "^#"))
于 2012-09-13T17:56:08.210 回答