Go to the first, previous, next, last section, table of contents.

ストリングを作る

多くの関数は、結果としてストリングを作ります。セクション 30.3 [string-match]、 ページ 297 も参照して下さい。これは前にマッチしたストリングからストリングを作 ります。

Function: make-string integer character

この関数は、全て(訳注:同じ) character からなる integer 文字のストリングを 返します。

  (make-string 5 ?x)
  => "xxxxx"
  (make-string 0 ?x)
  =>      ""

Function: substring string start &optional end

この関数は、 string 中の start の文字から始め end の文字で終るストリングを (新しく)返します。負の数字は、(ストリングの最後の文字を -1 として) ストリ ングの終りから数えます。

start と end のどちらかが integer でなかったり、 start が end の後の文字を 指していたり、どちらかの integer がストリングの範囲を出てしまっている場 合、エラーになります。

  (substring "abcdefg" 0)
  => "abcdefg"
  (substring "abcdefg" 0 2)
  => "ab"
  (substring "abcdefg" 5 nil)
  => "fg"
  (substring "abcdefg" -1 nil)
  => "g"

Function: concat &rest sequences

この関数は、アーギュメント sequences 中の文字からなるストリングを(新しく) 返します。アーギュメントは変更されません。このシーケンスはリストでもベクト ルでもストリングでもかまいません。

常に、(既存のストリングに eq でない) ストリングが新しく作られます。 sequences が与えられない場合、empty リストを返します。

文字や integer でないものが sequences の要素に含まれている場合、(wrong- type-argument) エラーを出します。

1つの機能として、 (integer のシーケンスではなく) sequences の(要素の) 1つ が integer である(という特殊な)場合、これは、その integer の 10進 print 表 現である digit(訳注:数字)にまず変換します。

その他の concatenation 関数に関しては、セクション 12.2 [mapconcat]、ページ 99、セクション 7.3 [vconcat]、ページ 63、セクション 6.2 [append]、ページ 51 を参照して下さい。 copy-sequence

  (concat "abc" "-def")
  => "abc-def"
  (concat "abc" -123 (list 120 (+ 256 121)) [122])
  => "abc-123xyz"
  (concat)
  => ""

Function: char-equal character1 character2

この関数は、アーギュメントが同じ文字を示す場合 t を返し、そうでない場合 nil を返します。この比較は modulo 256 で行ないます。

  (char-equal ?x ?x)
  => t
  (char-to-string (+ 256 ?x))
  => "x"
  (char-equal ?x (+ 256 ?x))
  => t

Function: string= string1 string2

この関数は、 2 つのストリングの文字が厳密に(訳注:exactly)マッチする場合 t を返します。大文字と小文字は区別します。ストリングの比較を行なう別の方法に 関しては、セクション 30.3 [string-match]、ページ 297 を参照して下さい。 string= は string-equal と同じです。

  (string-equal "abc" "abc")
  => t
  (string-equal "abc" "ABC")
  => nil
  (string-equal "ab" "ABC")
  => nil

Function: string-lessp string1 string2

(@findex string< は permuted index に対し問題を起こす) この関数は、 2 つの ストリングの(同じでない)最初の文字において、 string1 の方が string2 より (ASCII 値で)小さい場合 t を返します。文字を持たないストリングは最も小さい ストリングになります。 (小文字は、それに対する大文字より大きな ASCII 値を 持ちます)。この関数は string-lessp と同じです。

  (string-lessp "ABCC" "ABCD")
  => t
  (string-lessp "ABCC" "ABCC")
  => nil
  (string-lessp "ABC" "ABCC")
  => t
  (string-lessp "abcc" "ABCD")
  => nil


Go to the first, previous, next, last section, table of contents.