改变字符串中字符的位置

改变字符串中字符的位置

细绳:

34    /foo/bar_11,,,

我想插入“34”而不是第二个逗号。所以我的字符串应该如下所示:

/foo/bar_11,34,

我怎样才能做到这一点?

答案1

我认为唯一的办法就是使用捕获组捕获要移动的内容以及要将其移过的内容,可选择匹配和丢弃任何不需要的字符(例如空格),然后按所需顺序替换它们

前任。

$ sed -E 's/^([[:alnum:]]+)[[:blank:]]*([^,]*,[^,]*),/\2\1/' <<< '34    /foo/bar_11,,,'
/foo/bar_11,34,

相关内容