如何删除所有字母,直到第一个数字出现sed?

如何删除所有字母,直到第一个数字出现sed?,sed,freebsd,Sed,Freebsd,我有以下几行: XYZ2342 ABCD1323 KIL9824 我想删除开头的所有字母,因此对于上面的示例,我会得到: 2342 1323 9824 我试过这个: echo "ABC12345" | sed 's/[[:alpha:]]*[[:digit:]]//' 2345 但是它也删除了第一个数字,我如何使sed只删除字母(注意:它们总是ASCII) 如果相关的话,我正在使用FreeBSD sed实现。请尝试以下内容。我们需要替换所有内容,直到从开始到第一次出现

我有以下几行:

XYZ2342
ABCD1323
KIL9824
我想删除开头的所有字母,因此对于上面的示例,我会得到:

2342
1323
9824
我试过这个:

echo "ABC12345" |  sed 's/[[:alpha:]]*[[:digit:]]//'
2345
但是它也删除了第一个数字,我如何使sed只删除字母(注意:它们总是ASCII)


如果相关的话,我正在使用FreeBSD sed实现。

请尝试以下内容。我们需要替换所有内容,直到从开始到第一次出现数字为止,因此我们需要在此处使用
[^0-9]
regex,这意味着从开始替换所有内容直到第一次出现数字为止,在此处使用NULL

echo "ABC12345" | sed 's/^[^0-9]*//'

谢谢,我会接受答案(我删除了g,因为我只想出现一次)
sed的/[:alpha:]*/'
适用于您给定的示例。。