Emacs lisp - 在两个括号之间提取数字

标签 emacs elisp

我是 Emacs Lisp 的新手,仍在学习如何做一些基础知识。

我有一些像 [123] 这样的文本,我想提取数字 123。我已经进行了几次不同的尝试,但我似乎仍然无法可靠地捕捉到这个数字。我得到的最接近的是提取字符 ]

谁能给我指明方向?在使用 search-forwardssearch-backwards 捕获括号的点位置后,我最大的困难在于理解如何捕获数字。

提前致谢!

最佳答案

尝试

(when (re-search-forward "\\[\\([0-9]+\\)\\]" nil t)
  (string-to-number (match-string 1)))

或者,当点已经在数字之上时,thing-at-point 可能更方便:

(string-to-number (thing-at-point 'sexp))

关于Emacs lisp - 在两个括号之间提取数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11280565/

相关文章:

python - 在解释器忙碌时询问 Jedi/Auto Complete 信息时 Emacs 卡住

emacs - i-search -- 如何确定焦点是否仍在迷你缓冲区中?

emacs - 使用projectile在.dir-locals中设置flycheck-clang-include-path

emacs - 如何在 Lisp In A Box 中更改 emacs 配置

emacs - 单元格的 Orgmode 表格格式

OS X 上的 Emacs 滚动错误

emacs - 查看大文件时如何提高emacs性能?

emacs - 在 emacs/Fsharp 模式下启动单声道 exe 文件

emacs - 如何在 emacs 中添加工具栏按钮?

emacs - 什么是 "emacs load-path"?