Sun*_*gam 1 regex bash awk sed
我试图取代-,并:与?只在中间(第二)部分由分隔___(3下划线)
输入:
aaa___bb-bb:bbb___cc-cc:ccc
d-d___d-ddd:d-d___e-e:e
Run Code Online (Sandbox Code Playgroud)
输出:
aaa___bb?bb?bbb___cc-cc:ccc
d-d___d?ddd?d?d___e-e:e
Run Code Online (Sandbox Code Playgroud)
我试过下面的sed命令,但它只替换-:了中间部分的最后一次出现
echo "aaa___bb-bb:bbb___cc-cc:ccc
d-d___d-ddd:d-d___e-e:e" | sed "s|\(___[^_]*\)[-:]\([^_]*___\)|\1?\2|g"
Run Code Online (Sandbox Code Playgroud)
输出:
aaa___bb-bb?bbb___cc-cc:ccc
d-d___d-ddd:d?d___e-e:e
Run Code Online (Sandbox Code Playgroud)
我不仅限于使用sed.awk,tr等等也很好.