如何在 korn shell (ksh) 中匹配字符串中的 n 个数字和 n 个字母?

How to match n digits and n alphabets in a string in korn shell (ksh)?

在 ksh 中,如果前 10 个字符是数字,接下来的 5 个字符是大写字母,我需要验证一个字符串。

valid_str="1234567890ABCDE"

这就是我在 sh 中的做法:

if [[ ${valid_str} =~ ^([0-9]{10}[A-Z]{5}) ]]

但在 ksh 中它失败了。

尝试:

if test `echo $valid_str | grep -P "^[0-9]{10}[A-Z]{5}"`