我有string s=A8GCB5913L6
。我想在 shell 中分成三个部分。第一部分是最多 4 个连续数字的所有字母数字字符,第二部分是 4 个连续数字,第三部分是 4 个连续数字之后剩余的部分。
上述字符串的示例:
-
A8GCB
-
5913
-
L6
我已经尝试过echo $s | grep -P '(?<!\d)\d{4}(?!\d)'
但我可以在字符串中标记 4 位数字,但无法复制。
最佳答案
使用 bash:
[[ "$s" =~ ^([0-9A-Z]+)([0-9]{4})(.*) ]] && echo "${BASH_REMATCH[1]} ${BASH_REMATCH[2]} ${BASH_REMATCH[3]}"
输出:
A8GCB 5913 L6
关于string - 根据其中的 4 个连续数字分割字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52108895/