小编Dee*_*shi的帖子

在 bash/ash 中提取字符串的开头字母

如何从字符串中提取开头字母?我想在遇到第一个非字母字符之前提取开头出现的字母。

例如,如果输入字符串是abcd045tj56,则输出应该是abcd

同样,如果输入是jkl657890,则输出应该是jkl

可以使用 awk/sed/cut 在 shell 脚本中完成吗?

我试过

echo "XYZ123" | awk 'sub(/[[:alpha:]]*/, "")'
Run Code Online (Sandbox Code Playgroud)

但它给出的是 123 而不是 xyz

然后我尝试了

echo "XYZ123" | awk '{print (/[[:alpha:]]*/)}'
Run Code Online (Sandbox Code Playgroud)

但它给出了 1

我希望答案是 XYZ

awk cut sed ash

4
推荐指数
1
解决办法
195
查看次数

标签 统计

ash ×1

awk ×1

cut ×1

sed ×1