re-search-forward
函数re-search-forward
函数与 search-forward
函数非常相似。(See search-forward
函数.)
re-search-forward
用于搜索正则表达式。如果搜索成功,它将把光标立即放在目标的最后一个字符之后。如果是反向搜索,它将把光标放在目标的第一个字符之前。您可以告诉 re-search-forward
在搜索成功时返回 t
。 (移动光标因此是一个副作用。)
与 search-forward
一样,re-search-forward
函数接受四个参数:
nil
会导致函数发出错误信号(并打印一条消息);任何其他值会导致在搜索失败时返回 nil
,在搜索成功时返回 t
。
re-search-forward
进行向后搜索。
re-search-forward
的模板如下:
(re-search-forward "正则表达式" 搜索限制 失败时的操作 重复计数)
第二、第三和第四个参数是可选的。但是,如果您想向最后两个参数之一或两者都传递一个值,您还必须向所有前面的参数传递一个值。否则,Lisp 解释器将混淆您正在传递值的参数。
在 forward-sentence
函数中,正则表达式将是变量 sentence-end
的值。简单形式如下:
"[.?!][]\"')}]*\\($\\| \\| \\)[ ]*"
搜索的限制将是段落的末尾(因为句子不能超过段落)。如果搜索失败,函数将返回 nil
;而重复计数将由 forward-sentence
函数的参数提供。