Next: Text Comparison, Previous: Creating Strings, Up: Strings and Characters [Contents][Index]
このセクションで説明する処理を介して変更可能な文字列のコンテンツを変更できます。Mutabilityを参照してください。
既存の文字列の内容を変更するもっとも基本的な方法は、aset
(Array Functionsを参照)を使用する方法です。(aset string idx
char)
は、stringのインデックスidxに、charを格納します。それぞれの文字は1文字以上を占有しますが、すでにインデックスの場所にある文字のバイト数がcharが要するバイト数と異なる場合、aset
はエラーをシグナルします。
より強力な関数はstore-substring
です:
この関数はインデックスidxで開始される位置にobjを格納することにより、文字列stringの内容の一部を変更する。objは文字、または(stringより小さい)文字列です。
既存の文字列の長さを変更するのは不可能なので、stringの実際の長さにobjが収まらない、またはstringのその位置に現在ある文字のバイト数が新しい文字に必要なバイト数と異なる場合はエラーになる。
パスワードを含む文字列をクリアーするときにはclear-string
を使用します:
これはstringをユニバイト文字列にして、内容を0にクリアーする。これによりstringの長さも変更されるだろう。