gpt4 book ai didi

regex - Emacs:如何使用正则表达式替换字符串?

转载 作者:行者123 更新时间:2023-12-03 21:19:37 25 4
gpt4 key购买 nike

假设我在 emacs 中打开的文本文件(或 dired 缓冲区)中有以下内容:
文件_01.txt
文件_02.txt
...
文件_99.txt

我想查询替换或替换文件到
01_file.txt等

我想使用 query-replace-regexp 或 replace-regexp,但不知道该输入什么。我输入“file_..”的搜索部分,但“..”在替换字符串中被读取为句点.我开始学习正则表达式,不知道该怎么做。请帮忙,谢谢。

最佳答案

M-x replace-regexp调用函数以用正则表达式替换。

对于替换正则表达式,输入:\(file\)_\([0-9]+\)
这将创建两组,一组与"file"部分匹配,另一组与数字匹配。大括号\( ... \)是必要的,以使匹配稍后在替换字符串中可用。

对于替换为输入:\2_\1
这将插入搜索字符串(数字部分)中的第二个匹配项,添加 _(下划线),然后添加搜索字符串("file")中的第一个匹配项。

有关 Emacs 正则表达式的更多信息,请参阅 Regexp SyntaxRegexp Replace .

一旦你掌握了正则表达式的基础知识,你可能想看看 Emacs ReBuilder带有 M-x re-builder 的工具,它允许您以交互方式构建正则表达式。

关于regex - Emacs:如何使用正则表达式替换字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2003774/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com