regex C-Shell正则表达式比较两个字符串的变量

1tuwyuhd  于 2023-05-30  发布在  Shell
关注(0)|答案(1)|浏览(182)

这将返回1:
if ( "$TERM" =~ "xterm*" ) echo 1
但这些没有返回任何内容:
if ( "$TERM" =~ "(xterm*|rxvt*)" ) echo 1
if ( "$TERM" =~ "(xterm|rxvt)*" ) echo 1
如何在csh中进行OR正则表达式比较?先谢谢你了。

jv4diomz

jv4diomz1#

C-Shell=~运算符的右操作数不是RegEx模式,而是glob模式。从this documentation我发现:

运算符'=~'和'!~‘就像’!='和'==',只是右侧是一个全局模式(参见文件名替换),左手操作数与之匹配。

相关问题