regex - bash:将 grep 正则表达式结果分配给数组

标签 regex bash arrays

我正在尝试将正则表达式结果分配给 bash 脚本中的数组,但我不确定这是否可行,或者我是否做错了。以下是我想要发生的事情,但我知道我的语法不正确:

indexes[4]=$(echo b5f1e7bfc2439c621353d1ce0629fb8b | grep -o '[a-f0-9]\{8\}')

这样:

index[1]=b5f1e7bf
index[2]=c2439c62
index[3]=1353d1ce
index[4]=0629fb8b

任何链接或建议都会很棒 :)

最佳答案

这里

array=( $(echo b5f1e7bfc2439c621353d1ce0629fb8b | grep -o '[a-f0-9]\{8\}') )
$ echo ${array[@]}
b5f1e7bf c2439c62 1353d1ce 0629fb8b

关于regex - bash:将 grep 正则表达式结果分配给数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2576622/

相关文章:

javascript - 将数组元素与其他数组映射

regex - 将键和值从 Perl 正则表达式传递到哈希

xml - 将文本视为 block

linux - 查找字符串中的模式,然后将字符放在变量中的字符串后面

linux - 如何使用 PS1 变量在终端提示符中显示时间?

c - 什么算法可以在线性时间内对新值和重复值进行排序,而不使用额外的空间?

arrays - 为什么我可以调用固定大小数组的最后一个方法,而该类型没有实现该函数?

python - 我需要确保列表中只有某些字符?

java - String.split() - 在第一个定界符之前匹配前导空字符串?

javascript - 正则表达式替换一组字符