regex - 我怎样才能找到匹配特定次数的模式?

标签 regex linux command-line find pattern-matching

我有一堆文件的扩展名是数字位数不同的数字。我想找到用三位数向我展示的所有内容,但无法找到一种很好的方法来做到这一点。以下有效,但看起来笨拙:

find . -name "*.[0-9][0-9][0-9]"

似乎应该有一些方法来指定模式必须出现的次数。如果我想用三位或四位而不是两位或五位来捕捉所有内容怎么办?我应该用 -o 开关把这个荒谬的模式放进去吗?

最佳答案

不要为此使用 -name 开关。您需要使用 find -regex

find . -regex "^.*\.[0-9]\{3,4\}$"

这将查找所有扩展名为 3 或 4 位数字的文件名。

关于regex - 我怎样才能找到匹配特定次数的模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17306744/

相关文章:

javascript - 使用正则表达式将中断标签替换为其他一组中断标签

c++ - Linux:从给定的源文件自动创建 C++ makefile

linux - 保持 GNU 自定义 screen 窗口名称不被自动更新

c - 在c程序中用sudo执行shell命令

R - 替换正则表达式匹配的最后一个实例以及之后的所有内容

mysql 查询只获取十六进制ascii 数据?

ruby - 正则表达式:从 CSS 文件中提取 CSS 样式

linux - 如何在构建期间测量 CPU、内存和磁盘使用情况?

python - 在python中打印pdf文件

command-line - 如何将 tmux session 保存到 tmuxinator 项目?