search - search-forward 和其他搜索函数的返回类型是什么?
问题描述
我正在尝试编写一个交互式函数,该函数通过目录搜索单词或名称并返回包含有效搜索结果的文件。我试图以一种非常简单的方式编写它,但我检查有效搜索结果的方式是:
(point-min)
(if(search-forward thing-to-find)
(do-thing))
每当我对此进行测试时,它只会添加无论如何都没有有效结果的目录。我必须自己编写一个搜索单词的算法吗?我只是需要一些指导。
解决方案
我试过阅读文档,它没有告诉我任何关于返回类型的信息。
不对。 C-hf search-forward
说:
将 point 设置为找到的事件的结尾,并返回 point。
Point 是缓冲区中的字符位置——一个整数。
见C-hf point
和C-hig (elisp)Point
。
不幸的是,文档字符串中缺少search-forward
对 NOERROR 参数的解释,您可以在类似的文档字符串中找到详细信息re-search-forward
:
可选的第三个参数 NOERROR 指示当搜索失败时如何处理错误。如果它为 nil 或省略,则发出错误;如果是 t,则简单地返回 nil 并且什么也不做;如果既不是 nil 也不是 t,则移动到搜索的极限并返回 nil。
因此,这些函数在成功时返回一个整数,或者在失败时返回nil
(如果 NOERROR 非零)或发出错误信号。
请M-x report-emacs-bug
使用 报告文档问题search-forward
。
推荐阅读
- selenium - 拒绝加载脚本“xyz.js”,因为它违反了 ChromeDriver Chrome 无头 Selenium 的以下内容安全策略指令
- css - 比显示更好的选择:阻止
- java - 如何确保我在 intelliJ 中应用了正确的代码格式
- python - python sklearn.compose.columntransformer 处理丢失的列
- php - 在 Cisco 路由器上执行命令的 php 脚本
- r - R:组合来自两个数据帧的值的问题
- github - 符号链接到同一 NPM 模块中的文件
- java - 创建一个 Maven 原型以从一个类模板生成多个类
- firebase - NodeJS 服务器的 FCM
- angular - 如何在我的机器中同时保存 ionic 3 和 ionic 4 版本