Kev*_*Kev 13 bash regular-expression
我使用RegEx Buddy来设计和调试我的正则表达式。RegEx Buddy 允许我在许多不同的正则表达式引擎类型(.NET、Java、Perl、GNU BRE、GNU ERE、POSIX、BRE、POSIX ERE 等)之间进行选择。
bash 使用什么正则表达式引擎(例如 inif
和case
statements)?我正在运行 Centos 5.5 32 位和 bash 3.2.25(1):
[kevin@mon01 scratch]$ bash --version
GNU bash, version 3.2.25(1)-release (i686-redhat-linux-gnu)
Copyright (C) 2005 Free Software Foundation, Inc.
Run Code Online (Sandbox Code Playgroud)
我猜它会是 GNU BRE 还是 GNU ERE?
Ric*_*rri 12
bash(以及一般的 POSIX shell)在case
语句中不使用正则表达式,而是使用glob patterns。
使用=~
运算符对正则表达式的支持有限;请参阅:http : //mywiki.wooledge.org/BashGuide/Patterns 的详细信息,
其中说bash
使用扩展正则表达式 (ERE)。