我想知道检查字符串是否为
的最佳方法是什么$str
包含以下任何字符
!@#$%^&*()_+
我想过使用 ASCII 值,但对具体如何实现有点困惑。
或者如果有更简单的方法来检查字符串与值。
最佳答案
将它与 glob 进行匹配。您只需要转义 shell 认为特殊的字符:
#!/bin/bash
str='some text with @ in it'
if [[ $str == *['!'@#\$%^\&*()_+]* ]]
then
echo "It contains one of those"
fi
关于linux - 如何检查字符串是否包含特殊字符(!@#$%^&*()_+),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26621736/