Arrays Bash-将字符串解析为以逗号分隔的数组

Arrays Bash-将字符串解析为以逗号分隔的数组,arrays,regex,bash,delimiter,ifs,Arrays,Regex,Bash,Delimiter,Ifs,在Bash中,如何在Bash中转换数组中的以下字符串: details="cl roo,dara shi,GD leader, is the man,YG FAMILY" 这是我的代码: IFS="[a-z],[a-z]" read -r -a details_list <<< "$details" 迭代数组时的实际输出: cl roo dara shii GD leader, is the man YG FAMILY cl roo dara shii GD leader

在Bash中,如何在Bash中转换数组中的以下字符串:

details="cl roo,dara shi,GD leader, is the man,YG FAMILY"
这是我的代码:

IFS="[a-z],[a-z]" read -r -a details_list <<< "$details"
迭代数组时的实际输出:

cl roo
dara shii
GD leader, is the man
YG FAMILY
cl roo
dara shii
GD leader
is the man
YG FAMILY
这应该是有效的:

details="cl roo;dara shi;GD leader, is the man;YG FAMILY"

IFS=';' read -r -a array <<< "$details"

echo "${array[2]}"   -> GD leader, is the man
details=“cl roo;dara shi;GD领导人,是男人;YG家族”

如果s=';'read-r-a数组重复问题:这里是!我已经检查过了,它与预期的输出不同。您如何确定要在哪个逗号上断开?我在想BDELimiter是一个逗号,它位于两个字符之间。。。。我不知道如何在正则表达式上使用它。谢谢你的回答。我试过这个,但“GD领导人,就是那个人”被一分为二。我想把它放在一个索引中。@stickyservernotes:看我的编辑广东省领导人在one@stickyservernotes现在它起作用了。请使用另一个分隔符,如“;”我把这当作最后的手段。我要解析的字符串将来自一个日志文件,因此我不能随意更改分隔符。