shell支持正則:Linux shell判斷字符串是否以某些字符開頭


 摘自:https://majing.io/posts/10000006301174

==比較

使用bash檢查字符串是否以某些字符開頭可以使用==比較

[[ $str == h* ]]

示例

str="hello"
if [[ $str == h* ]];
then
 echo 'yes'
fi

有兩個地方需要注意:

  1. h*不需要使用引號括起來,使用引號括起來是直接做相等比較
  2. 比較語句使用雙中括號括起來,而不是使用單中括號

=~正則比較

如果使用Bash的正則

str="hello"
if [[ "$str" =~ ^he.* ]]; then
    echo "yes"
fi

使用正則匹配字符串的開頭字符需要注意:

  • he*:不要使用he*,這里的*號表示e字符0到多個,即h,以及heeee都是測試通過的
  • he.*:這里只允許包含he的字符串通過測試
  • ^he.*:這個表示是以he開頭的字符串通過檢測


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM