cc4*_*4re 46 regex linux bash shell
我遇到了代码所在的shell脚本
for line in $LIST_ARRAY;do
if [[ $LIST_ARRAY =~ $line ]]
then
echo "true"
....
...
.
Run Code Online (Sandbox Code Playgroud)
什么是使用=~在这种情况下?
Mim*_*EAM 56
它是Equal Tilde运算符,允许在if语句中使用正则表达式.
可以使用另一个二元运算符=〜,其优先级与==和!=相同.使用它时,操作符右侧的字符串被视为扩展正则表达式并相应地匹配(如在regex(3)中).如果字符串与模式匹配,则返回值为0,否则返回1.如果正则表达式在语法上不正确,则条件表达式的返回值为2.如果启用了shell选项nocasematch,则执行匹配而不考虑字母字符的情况.可以引用模式的任何部分以强制它作为字符串匹配.
http://linux.die.net/man/1/bash