如何替换双引号内的空格

时间:2013-06-18 20:07:47

标签: replace spaces busybox

我需要在变量中替换doublequotes中的每个空格:

VAR='"this is my problem" but not yours'

现在我必须用'[[:space]] +'替换“这是我的问题”中的空格(可能连续多个)。我的shell是busybox。什么是最简单的方法?

谢谢。

1 个答案:

答案 0 :(得分:0)

试试这个:echo $var | sed -re 's|.*("[^"]*").*|\1|g' | sed -re 's|\s|[[:space:]]+|g'。第一个sed是额外的双引号部分,第二个sed是将双引号内的空格转换为[[:space:]] +。

PS。如果您从一开始就将评论中的所有内容放入原始问题中,那么您可以节省两个小时:)