如何判断一串字符串中含有特殊字符。
例如字符串中含有~!@#$%^&*()_+|-=\[]{}:";'<>?,./这类字符,且含有中文字符,如何判断。
我的目的是是否可以使用egrep命令结合管道命令“|”来同时判断?
最简单的是用 grep 来测试:
好比说你想要知道一个字串有没有含井字号(#):
S='12345#ABCDE'
echo $S | grep -q '#'
echo $?
0 <------- 如果return value是0的话,表示有,1的话,表示没有match
以此类推!
echo '123~456
123456
234!567
234567
345@678
12345
12345#
' | grep -e "#" -e"!" -e "@"
执行结果:
234!567
345@678
12345#
好比说你想要知道一个字串有没有含井字号(#):
S='12345#ABCDE'
echo $S | grep -q '#'
echo $?
0 <------- 如果return value是0的话,表示有,1的话,表示没有match
以此类推!
echo '123~456
123456
234!567
234567
345@678
12345
12345#
' | grep -e "#" -e"!" -e "@"
执行结果:
234!567
345@678
12345#
温馨提示:答案为网友推荐,仅供参考
第1个回答 2010-06-11
SS