字符串在bash中分割

时间:2016-02-18 02:17:00

标签: string bash split

在Bash脚本中,我想将一行分成几部分并将它们放入一个数组中。

该行:

ParisABFranceABEurope

我想将它们拆分成这样的数组(使用AB):

array[0] = Paris
array[1] = France
array[2] = Europe

我想使用简单的代码,命令的速度并不重要。我该怎么办?

2 个答案:

答案 0 :(得分:4)

这是一个不需要子壳的(即它都是内置的)。您需要选择一个不能出现在数据中的分隔符(此处str='ParisABFranceABEurope' IFS='@' read -r -a words <<< "${str//AB/@}" echo "${words[0]}" echo "${words[1]}" echo "${words[2]}" ):

$ source foo.sh
Paris
France
Europe

鼓声,请...

            XElement root = new XElement("root", new XElement[] {
                new XElement("text", "text1"),
                new XElement("text", "text2")
            });

答案 1 :(得分:0)

$declare -a array=($(echo "ParisABFranceABEurope" | awk -F 'AB' '{for (i=1;i<=NF;i++) print $i}'))
$ echo "${array[@]}"
Paris France Europe