首页 > 学技术 > 技术网文 > Linux Shell > 正文

[保留] 小贴士: 左右逢源操纵strings


来源 chinaunix.net 酷勤网整理

对字符串的操纵有很多方法,我就不多说了,这几天在读bash的guide,发现了一个有意思的,(或许大家都知道,我还是发出来,就算灌水吧 :mrgreen: )

# Is it possible to index from the right end of the string?
    
echo ${stringZ:-4}                           # abcABC123ABCabc
# Defaults to full string, as in ${parameter:-default}.
# However . . .

echo ${stringZ:(-4)}                         # Cabc 
echo ${stringZ: -4}                          # Cabc
# Now, it works.
# Parentheses or added space "escape" the position parameter.

# Thank you, Dan Jacobson, for pointing this out.

我们知道,对string的从左到右的操作很简单,这个tips讲的是从右到左如何操作,我作了几个实验,感到确实很有 意思 :) 大家感兴趣的可以玩玩!



 dahai01 回复于:2005-12-12 14:04:25

学习,


 ghostwx 回复于:2005-12-12 14:39:11

从来没有做过什么贡献,就算给烈火大哥顶一下吧:
ksh
${var#pattern} 从变量的左端移走匹配模式,之后返回var的值,移走的是最短的匹配块。
${var##pattern} 从变量的左端移走匹配模式,之后返回var的值,移走的是最长的匹配块。
${var%pattern} 从变量的右端移走匹配模式,之后返回var的值,移走的是最短的匹配块。
${var%%pattern} 从变量的右端移走匹配模式,之后返回var的值,移走的是最长的匹配块。

tail="${PWD##*/}"可以看看结果




原文链接:http://bbs.chinaunix.net/viewthread.php?tid=667251
转载请注明作者名及原文出处



收藏本页到: