regex - Bash 案例条件

标签 regex linux bash shell scripting

我正在处理类似于以下内容的案例陈述:

案例“$myvar”在
[aA]) {
     #做东西
};;
埃萨克

我的目标是捕获包含 a 或 A 的输入字符串的实例,忽略字符串的其余部分。问题是,给定包含其他内容(例如 ab)的输入,字符串不会被我的 case 语句捕获。我确定问题出在我的正则表达式实现上,但我不知道如何解决。

最佳答案

bash 中的 case 语句采用 glob,而不是正则表达式。并且 glob 匹配整个字符串。所以要找到字母“A”的任何实例,你会这样做:

case "$myvar" in
*[aA]*) # do stuff
  ;;
esac

关于regex - Bash 案例条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13338440/

相关文章:

PHP 正则表达式 @ vs/

regex - pcre 中的终止问题

c++ - 在 Ubuntu 中使用 C/C++ 进行线路输入插孔感知

linux - 在 Linux/Unix 中执行 shell 脚本时出错

linux - 在无效的输出条件上重复一个特定的 case 语句并在 case 内循环

python - str_replace_all() r 在 python 中等效

regex - 仅提取不包含以特定字母组合结尾的单词的单词(仅使用正则表达式)

linux - 在 screen 下运行时,当前目录没有出现在标题栏中

bash - 如何在 shell 脚本中以相反的顺序打印参数?

Bash 导出属性