Linux shell里用正则表达式怎么表示一段文字,只包括英文字母和空格

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux shell里用正则表达式怎么表示一段文字,只包括英文字母和空格相关的知识,希望对你有一定的参考价值。

参考技术A str="这里是你所谓的一段文字"
echo
"$str"
|
egrep
"^[a-zA-Z
]*$"
>/dev/null
if
[
$?
-eq
0
];
then
echo
"The
string
is
accepted."
else
echo
"The
string
is
NOT
accepted!"
fi
--------------------------------
^[a-zA-Z
]*$
这就是你要的正则表达式,方括号中包括小写字母、大写字母和空格。

一个简单的例子区分linux shell 正则表达式中的 *,+,?

1,linux shell 正则表达式 *和+号的区别

例子记忆:

[[email protected] data]# touch test.txt
[[email protected] data]# cat>>test.txt<<EOF
> gooood
> goood
> good
> god
> gd
> EOF

* 表示重复前面字符0次或多次

[[email protected] data]# grep "go*d" test.txt
gooood
goood
good
god
gd

+ 表示重复前面字符1次或者多次

[[email protected] data]# egrep "go+d" test.txt
gooood
goood
good
god


? 表示重复前面字符0次或者1次

[[email protected] data]# egrep "go?d" test.txt
god
gd



以上是关于Linux shell里用正则表达式怎么表示一段文字,只包括英文字母和空格的主要内容,如果未能解决你的问题,请参考以下文章

linux下怎么批量重命名这些文件

Linux Shell编程

Shell编程之正则表达式(sed)

shell中怎么判断输入的是不是是数字?

linux通配符

Linux Shell正则表达式如何匹配1~3位数字