文字列

「文字列」の編集履歴(バックアップ)一覧に戻る

文字列 - (2009/03/30 (月) 00:25:15) の編集履歴(バックアップ)



文字列

リファレンスマニュアルへのリンク


文字列の長さを得る

(length "abcdefg") ;=> 7
(length "日本語") ;=> 3
 

文字列を結合する

concat関数を使います。

; 普通に結合
(concat "abc" "-def") ;=> "abc-def"
(concat "私は" "美味しく食べました") ;=> "私は美味しく食べました"
 
; nilは無視
(concat "abc" nil "-def")
 
; 引数なしの場合は空文字列を返す
(concat) ;=> ""
 

繰り返し文字列を生成する

大文字・小文字に揃える

upcase, downcase関数を使います
(upcase "The cat in the hat") ;=> "THE CAT IN THE HAT"
(downcase "THE CAT IN THE HAT") ;=> "the cat in the hat"
 

先頭だけを大文字にする(キャピタライズ)

他の言語に余り無くて便利な機能として、キャピタライズ(先頭だけを大文字にする)があります。
(capitalize "The cat in the hat") ;=> "The Cat In The Hat"
(capitalize "THE 77TH-HATTED CAT") ;=> "The 77th-Hatted Cat"
 

大文字と小文字の入れ替え

コマンドの実行結果を文字列に設定する

複数行の文字列を作成する

ヒアドキュメントの終端文字列をインデントする

複数行のコマンドの実行結果を文字列に設定する

部分文字列を取り出す

substring (string start &optional end)

substring関数を使います。
startは先頭の添え字、endは終端の添え字を表します(endは含めずにコピーする)。

; 0(a)から、3(d)なので"abc"を生成
(substring "abcdefg" 0 3) ;=> "abc"
 
; 負の添え字は逆から数える
(substring "abcdefg" -3 -1) ;=> "ef"
 
; 第2引数は省略可能で、終端までコピーを表す
(substring "abcdefg" 2) ;=> "cdefg"
 
; 先頭に0を渡すと文字列のコピーと等価になる
(substring "abcdefg" 0) ;=> "abcdefg"
 

部分文字列を置き換える

文字列を指定されたパターンで分割する

Rubyのsplitとほぼ同じように使えます、第2引数に渡すのは正規表現です。

(split-string "Soup is good food" "o") ;=> ("S" "up is g" "" "d f" "" "d")
(split-string "Soup is good food" "o+") ;=> ("S" "up is g" "d f" "d")
 

文字列中の式を評価し値を展開する

文字列を1文字ずつ処理する

文字列を1行ずつ処理する

文字列の先頭と末尾の空白文字を削除する

文字列を整数に変換する (to_i)

文字列を浮動小数点に変換する (to_f)

8進文字列を整数に変換する (oct)

16進文字列を整数に変換する (hex)

ASCII文字をコード値に(コード値をASCII文字に)変換する

文字列を中央寄せ・左詰・右詰する

"次"の文字列を取得する

文字列を暗号化する

文字列中で指定したパターンにマッチする部分を置換する

文字列中に含まれている任意文字列の位置を求める

文字列の末端の改行を削除する

カンマ区切りの文字列を扱う

任意のパターンにマッチするものを全て抜き出す

漢字コードを変換する

マルチバイト文字の数を数える

マルチバイト文字列の最後の1文字を削除する

printf整形

ツールボックス

下から選んでください:

新しいページを作成する
ヘルプ / FAQ もご覧ください。