Previous: capitalize 先頭文字大文字変換 Up: mcal Next: ceil 切り上げ MCMD2
MCMD2 : mcal : cat 文字列併合

4.25 cat 文字列併合

書式: cat($token,str_1,str_2,\cdots $)

$token$を区切り文字として、指定された$str_ i$をその順番に併合して一つの文字列を生成する。 $token$として空文字""を指定すれば、文字列の単純な結合となる。

利用例

例1: 基本例

3つの項目str1,str2,str3を"#"の区切り文字を挿入して併合する。

$ more dat1.csv
id,str1,str2,str3
1,abc,def,ghi
2,A,,CDE
3,,,
4,,,XY
$ mcal c='cat("#",$s{str1},$s{str2},$s{str3})' a=rsl i=dat1.csv o=rsl1.csv
#END# kgcal a=rsl c=cat("#",$s{str1},$s{str2},$s{str3}) i=dat1.csv o=rsl1.csv
$ more rsl1.csv
id,str1,str2,str3,rsl
1,abc,def,ghi,abc#def#ghi
2,A,,CDE,A##CDE
3,,,,##
4,,,XY,##XY

例2: tokenが空文字の場合

$ mcal c='cat("",$s{str1},$s{str2},$s{str3})' a=rsl i=dat1.csv o=rsl2.csv
#END# kgcal a=rsl c=cat("",$s{str1},$s{str2},$s{str3}) i=dat1.csv o=rsl2.csv
$ more rsl2.csv
id,str1,str2,str3,rsl
1,abc,def,ghi,abcdefghi
2,A,,CDE,ACDE
3,,,,
4,,,XY,XY

例3: ワイルドカードを利用した例

strから始まる項目(str1,str2,str3)をワイルドカード「str*」によって指定している。

$ mcal c='cat("",$s{str*})' a=rsl i=dat1.csv o=rsl3.csv
#END# kgcal a=rsl c=cat("",$s{str*}) i=dat1.csv o=rsl3.csv
$ more rsl3.csv
id,str1,str2,str3,rsl
1,abc,def,ghi,abcdefghi
2,A,,CDE,ACDE
3,,,,
4,,,XY,XY
Previous: capitalize 先頭文字大文字変換 Up: mcal Next: ceil 切り上げ MCMD2