以下是使用Bash将正则表达式的值添加到数组中的一个示例代码:
#!/bin/bash
# 使用正则表达式匹配的字符串
string="This is a test string 1234"
# 定义一个空数组
array=()
# 使用正则表达式匹配字符串中的数字
regex="[0-9]+"
while [[ $string =~ $regex ]]; do
# 将匹配到的值添加到数组中
array+=("${BASH_REMATCH[0]}")
# 从字符串中删除匹配到的值
string=${string#*"${BASH_REMATCH[0]}"}
done
# 打印数组中的值
echo "数组中的值:"
for value in "${array[@]}"; do
echo "$value"
done
以上代码将会输出:
数组中的值:
1234
代码中的$regex
是一个包含正则表达式的变量,您可以根据您的需求修改它来匹配不同的模式。在每次循环中,"${BASH_REMATCH[0]}"
将会保存匹配到的值,我们将它添加到数组中,并从原始字符串中删除这个匹配到的值。最后,我们使用一个循环遍历数组并打印出其中的值。