grep - q“$ 1 [^ _-]”

问题描述 投票:0回答:1

任何人都可以解释这个胡言乱语的含义:

"[^_-]"

grep - q "$1[^_-]"

我做了一个man grepand什么也没发现。

regex grep
1个回答
1
投票

您可以使用info grep找到这些字符的定义并导航到“3正则表达式”,然后“3.2字符类和括号表达式”(可在线获取here):

括号表达式是由'['和']'括起来的字符列表。它匹配该列表中的任何单个字符。如果列表的第一个字符是插入符号'^',则它匹配列表中不存在的任何字符。

  • ' - '表示范围,如果它不是列表中的第一个或最后一个或范围的结束点。
  • '^'表示不在列表中的字符。如果要将“^”字符设为列表项,请将其放在任何位置,但首先放在任何位置。

所以"$1[^_-]"应该匹配变量$1中的任何内容,然后是一个不是_-的字符。

© www.soinside.com 2019 - 2024. All rights reserved.