【问题标题】:Bash Case ConditionsBash 案例条件
【发布时间】:2012-11-12 04:35:57
【问题描述】:

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

Case "$myvar" in
[aA]) {
     #dostuff
};;
Esac

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

【问题讨论】:

    标签: regex linux bash shell scripting


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 2016-08-04
      • 1970-01-01
      • 2018-11-13
      • 2020-04-16
      • 2011-07-30
      • 2011-10-25
      • 2020-07-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多