标签: regex bash unix sed
当我对以下命令的输出感到困惑时,我正在使用sed练习一些命令:
echo 'first:second' | sed 's_[^:]*_(&)_g'
我的问题是:为什么这个命令只将字符串“first”和“second”包装在括号中?
因为我在正则表达式条件中指定了“零或更多非冒号”,所以结肠是否也不应该被包裹?
请澄清。
答案 0 :(得分:2)
您使用
[^:]
搜索除:以外的所有字符。 所以你经历的是正常的比赛。
: