私は、次のことを目標とする複雑なスクリプトを作成しようとしています。次のような文字列が入ってきます。
2012 2013 "multiple words"
私の目標は、これらのそれぞれをスペースで区切られた配列に入れることですが、単一の単語の一致のみであり、二重引用符で囲まれたものではありません。それらは1つの単語と見なされるべきです。だから私の考えは、これを2つのステップで行うことでした。最初に倍数である単語に一致し、それらを文字列から削除してから、別の繰り返しで空白で分割します。
残念ながら、私はecho
一致する方法についてのみヘルプを見つけることができません. これまでのところ、私はこれを持っています:
array=$(echo $tags | sed -nE 's/"(.+)"/\1/p')
しかし、これは(OS X上で)次のようになります:
2012 2013 multiple words
期待される結果:
array[1]="2012"
array[2]="2013"
array[3]="multiple words"
この種の問題についてどうすればよいでしょうか?
ありがとう。