Grep 所有不以数字开头的字符串

Paw*_*ski 11 grep regular-expression

我正在寻找 grep 来显示所有不以数字开头的字符。我做了这样的事情:

grep -v '^[1-2]*[a-zA-Z]?' -o
Run Code Online (Sandbox Code Playgroud)

但它不起作用。你对一些reg exp有什么想法吗?

Mat*_*teo 23

grep -v '^[0-9]'

将输出所有不 ( -v) 匹配^以数字开头的行的行[0-9]

例如

$ cat test
string
string123
123string
1string2
$ grep -v '^[0-9]' test
string
string123
Run Code Online (Sandbox Code Playgroud)

或者如果你想删除所有以数字开头的单词

sed 's/[[:<:]][[:digit:]][[:alnum:]_]*[[:>:]]//g'
Run Code Online (Sandbox Code Playgroud)

或使用快捷方式和断言

sed 's/\<\d\w*\>//g'
Run Code Online (Sandbox Code Playgroud)

例如

$ cat test
one
two2
3three
4four4
five six
seven 8eight
9nine ten
11eleven 12twelve
a b c d
$ sed 's/[[:<:]][[:digit:]][[:alnum:]_]*[[:>:]]//g' test
one
two2


five six
seven 
 ten

a b c d
Run Code Online (Sandbox Code Playgroud)