Linux 中变量字符串的截取
Linux 中变量字符串的截取
两类截取方式:
#表示从左侧截取;
%表示从右侧截取;
同时对应两种贪婪匹配模式:
##表示左侧贪婪匹配;
%%表示右侧贪婪匹配;
同时对应两种方向:
*.表示从左侧匹配;
.*表示从右侧匹配;
001、实例1,左侧匹配截取
[root@PC1 test]# ls [root@PC1 test]# str1="aa.bb.cc.dd" ##: 测试字符串 [root@PC1 test]# echo $str1 aa.bb.cc.dd [root@PC1 test]# echo ${str1#*.} ##: #号表示左侧匹配,对应的使用*.符号也表示从左侧匹配, 单个#号表示非贪婪匹配 bb.cc.dd [root@PC1 test]# echo ${str1##*.} ##: #号表示左侧匹配,对应的*.也表示从左侧匹配,两个## 表示贪婪皮皮额 dd

002、实例2,右侧匹配截取
[root@PC1 test]# ls [root@PC1 test]# str1="aa.bb.cc.dd" ## 测试字符串 [root@PC1 test]# echo $str1 aa.bb.cc.dd [root@PC1 test]# echo ${str1%.*} ## %表示右侧截取,对应使用.*表示右侧匹配,单个%号表示非贪婪匹配 aa.bb.cc [root@PC1 test]# echo ${str1%%.*} ## %表示右侧截取,对应使用.*表示右侧匹配,两个%号表示贪婪匹配。 aa

。

浙公网安备 33010602011771号