天天看點

Bash字元串處理(與Java對照) - 12.字元串連接配接Bash字元串處理(與Java對照) - 12.字元串連接配接

Bash字元串處理(與Java對照) - 12.字元串連接配接

In Java

String.concat

String     concat(String str)

          将指定字元串聯到此字元串的結尾。

String newStr = str.concat(str2);

StringBuilder.append & StringBuffer.append

推薦使用StringBuilder,而不是StringBuffer。

StringBuilder sb = new StringBuilder();

sb.append("some string").append('c').append(someValue);

String s = sb.toString();

In Bash

将多個字元串變量或者常量合并,在Bash中采用插值的方式

S="$S1$S2"

S="${S1}${S2}"

S="STRING IS $(S1}"

[[email protected] ~]# S1=Hello

[[email protected] ~]# S2=World

[[email protected] ~]# S=$S1$S2

[[email protected] ~]# echo $S

HelloWorld

[[email protected] ~]# S="$S1 $S2"

[[email protected] ~]# echo $S

Hello World

典型應用:在外部指令搜尋路徑PATH中增加新項

PATH=$PATH:$NEWDIR

[[email protected] ~]# echo $PATH

/usr/kerberos/sbin:/usr/kerberos/bin:/usr/apache/apache-ant-1.7.1/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

[[email protected] ~]# PATH="$PATH:/usr/games"

[[email protected] ~]# echo $PATH

/usr/kerberos/sbin:/usr/kerberos/bin:/usr/apache/apache-ant-1.7.1/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/games

[[email protected] ~]#

在Bash3.1版本及以上,支援+=操作

[[email protected] ~]# echo $PATH

/usr/kerberos/sbin:/usr/kerberos/bin:/usr/apache/apache-ant-1.7.1/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin

[[email protected] ~]# PATH+=":~/bin"

[[email protected] ~]# echo $PATH

/usr/kerberos/sbin:/usr/kerberos/bin:/usr/apache/apache-ant-1.7.1/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:~/bin

[[email protected] ~]#

本文連結:http://codingstandards.iteye.com/blog/1178681   (轉載請注明出處)

傳回目錄:Java程式員的Bash實用指南系列之字元串處理(目錄) 

上節内容:Bash字元串處理(與Java對照) - 11.比較兩個字元串大小(字典順序、數值比較)

下節内容:Bash字元串處理(與Java對照) - 13.字元串數組連接配接(以指定分隔符合并)