grep正则表达式小失误

我们要在文本中搜索出来以负数开头的数字的范围,类似 -12-12,-9-100,为此我们写下如下正则表达式:

$ egrep -o "-[0-9]{1,3}" range.txt

grep: unknown option -- [

Usage: grep [OPTION]... PATTERN [FILE]...

Try 'grep --help' for more information.

明明我只写了一个-,为何报错说两个--,问了deepseek,把egrep环境grep也不行

$ grep -oE "-[0-9]{1,3}" range.txt

grep: unknown option -- [

Usage: grep [OPTION]... PATTERN [FILE]...

Try 'grep --help' for more information.

按deepseek说的双引号变单引号也不行

$ grep -oE '-[0-9]{1,3}-' range.txt

grep: unknown option -- [

Usage: grep [OPTION]... PATTERN [FILE]...

Try 'grep --help' for more information.

依据经验尝试了转义,先转换前面的

$ grep -oE "\-[0-9]{1,3}" range.txt

-100

-16

-100

-100

-1

-100

.......

结果果然可以,于是这样写,确认OK。应该是-与[0-9]之间的要有所区分

$ grep -oE "\-[0-9]{1,3}\-" range.txt

-12-

-11-

相关推荐
金銀銅鐵13 分钟前
[Java] 如何理解 class 文件中字段的 access flags?
java·后端
IMPYLH20 分钟前
Linux 的 wc 命令
linux·运维·服务器·前端·bash
小短腿的代码世界21 分钟前
Qt国际化深度解析:从源码到企业级多语言实践
java·数据库·qt
凌冰_30 分钟前
IDEA 集成Claude Code
java·ide
zxy64449247331 分钟前
Centos7.9编译安装PHP7.4
linux·运维·服务器
SXJR32 分钟前
Java中的Cross-Encoder模型解决方案
java·开发语言
无限进步_34 分钟前
【Linux】从冯诺依曼到操作系统:理解计算机运行的基本脉络
linux·运维·服务器
彦为君41 分钟前
JavaSE-11-BIO/NIO/AIO(多人聊天室)
java·开发语言·python·ai·nio
计算机安禾1 小时前
【c++面向对象编程】第43篇:可变参数模板(C++11):优雅处理不定长参数
java·开发语言·c++
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第69题】【JVM篇】第29题:GC Roots 有哪些?
java·开发语言·jvm·面试