📅  最后修改于: 2023-12-03 14:59:29.404000             🧑  作者: Mango
在 Bash 中,可以使用 [[
和 ]]
来进行字符串操作,并且可以使用 =
,!=
,=~
,<
, >
,<=
,>=
这些运算符来进行字符串比较和匹配。
使用 =
或者 !=
运算符可以进行字符串是否相等的比较:
if [[ "$str1" = "$str2" ]]; then
echo "str1 等于 str2"
fi
if [[ "$str1" != "$str2" ]]; then
echo "str1 不等于 str2"
fi
使用 [[ $string =~ $regex ]]
可以进行字符串是否匹配某个正则表达式的匹配:
if [[ "$str" =~ ^[a-zA-Z]+$ ]]; then
echo "str 仅包含字母"
fi
使用 [[ $string == *"$sub"* ]]
可以进行在字符串中是否包含某个子字符串的查找:
if [[ "$str" == *"foo"* ]]; then
echo "str 中包含 foo"
fi
使用 -z
或者 -n
可以判断一个字符串是否为空:
if [[ -z "$str" ]]; then
echo "str 是空的"
fi
if [[ -n "$str" ]]; then
echo "str 不是空的"
fi
使用 ${var:start:len}
可以对字符串进行切片操作:
str="hello world"
echo "${str:0:5}" # 输出 hello
使用 ${var1}${var2}
可以对字符串进行连接:
str1="hello"
str2="world"
echo "${str1}${str2}" # 输出 helloworld
总之,Bash 中对于字符串的操作是非常灵活的,可以根据实际情况进行组合使用。