文字列関数

CryptStr
DecryptStr
ExcludeMsgBoxTag
GetToken
StrCharsetFilter
StrComp
StrDecodeURL
StrEncodeURL
StrFullKana
StrFullWidth
StrGetCharset
StrHalfWidth
StrHiragana
StriComp
StrIndexOf
StrJoin
StrKatakana
StrLen
StrLenmb
StrLower
StrLSearch
StrnComp
StrnCompmb
StrniComp
StrniCompmb
StrnSet
StrnSetmb
StrReplace
StrReverse
StrReversemb
StrSearch
StrSet
StrSubstring
StrSubstringmb
StrToken
StrTokenmb
StrTrim
StrTrimLeft
StrTrimRight
StrUpper

string CryptStr(   string str )[1.50以降]

機能 文字列を暗号化します.
引数
str 暗号化する文字列
戻り値
成功なら暗号化された文字列を返します. 失敗するとNULLを返します.
説明

文字列を暗号化します. strに暗号化する文字列を指定します. 復号にはDecryptStrを使用します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string DecryptStr(   string str )[1.50以降]

機能 CryptStr関数で暗号化した文字列を復号します.
引数
str 復号する文字列
戻り値
復号された文字列を返します.失敗するとNULLを返します.
説明

CryptStr関数で暗号化した文字列を復号します. strに復号する文字列を指定します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string ExcludeMsgBoxTag(   string str )[2.00以降]

機能 Talk,Messageに使用する制御文字を取り除きます.
引数
str 制御文字を取り除く文字列
戻り値
制御文字を取り除いた文字列
説明 str引数で指定された文字列に含まれる制御文字を全て取り除きます. 制御文字についてはMessageを参照してください.
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string GetToken(
  string src,
  string dlim,
  int n )

機能 この関数はStrTokenに置き換えられました.StrTokenを使用してください.
引数
src
dlim
n
戻り値
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrCharsetFilter(
  string str,
  string charset_in,
  string charset_out )
[1.50以降]

機能 文字コードを変換します.
引数
str 変換対象文字列
charset_in 変換対象文字列(str引数)の文字コード
charset_out 変換後の文字コード
戻り値
変換後の文字列.失敗したときはNULL.
説明

str引数で指定される文字列の文字コードを変換します. "JIS","EUC","SJIS"(大文字でなくても可) の3つが指定できます.

また[3.00]以降より新たに"UTF-8"をサポートしました.(BOMなしで出力されます) strがNULL,あるいは文字コード指定が誤っていれば失敗し,NULLを返します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrComp(
  string str1,
  string str2 )

機能 二つの文字列を辞書順(コード順)に比較します.
引数
str1 比較文字列
str2 比較文字列
戻り値
0str1とstr2は等しい
正値str1はstr2より大きい
負値str1はstr2より小さい
説明

文字列str1と文字列str2を辞書順(文字コード順)に比較します. 2バイト文字はSJISコード順で評価されます. str1がstr2より大きい場合は正の値, str1とstr2が等しい場合は0, str1がstr2より小さい場合は負の値を返します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrDecodeURL(   string urlstr )

機能 URLエンコードされた文字列urlstrをデコードして返します.
引数
urlstr URLエンコードされた文字列
戻り値
デコード結果
例1
StrDecodeURL( "%A5%DA%A5%EB%A5%BD%A5%CA" ) → "キャラクター" 
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrEncodeURL(   string str )

機能 文字列をURLエンコード(CGIなどに値を渡す際のエンコード形式)した文字列を返します.
引数
str エンコードする文字列
戻り値
エンコードされた文字列
説明

文字列strをURLエンコード(CGI等にパラメータを渡す際のエンコード方式)した文字列を返します. 変換後もstrの値は変化しません.

例1
StrEncodeURL( "Persona Development Kit" ) → "Persona+Development+Kit"
StrEncodeURL( "ソフトウェア" ) → "%83%5C%83t%83g%83E%83F%83A"
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrFullKana(   string str )

機能 文字列中の半角カタカナのみを全角カタカナに変換して返します.
引数
str 対象文字列
戻り値
変換後の文字列
説明

文字列str中の半角カタカナを,全角カタカナに変換して返します. ( ア → ア , アイウエオ → アイウエオ )

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrFullWidth(   string str )

機能 文字列strを全角に変換して返します.
引数
str 対象文字列
戻り値
変換後の文字列
説明

文字列strを半角に変換して返します. ( a → a, あ → ア, 1 → 1 )

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrGetCharset(   string str )[1.50以降]

機能 文字コードを判定します.
引数
str 判定する文字列
戻り値
"JIS"JISコード
"EUC"EUCコード
"SJIS"SJISコード
"UTF-8"UTF-8コード(BOMあり又はなし)[3.00以降]
NULL判定に失敗
説明

文字コードを判別します. strで与えられた文字列の文字コードを自動判別し,結果を文字列で返します. strがNULLの場合,または未知の文字コードの場合はNULLを返します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrHalfWidth(   string str )

機能 文字列を半角に変換して返します.
引数
str 対象文字列
戻り値
変換後の文字列
説明

文字列strに含まれる文字を半角に変換して返します. 全角英数は半角英数に, ひらがなは半角カタカナに, 全角記号は半角記号に変換します. 変換できない文字は全角のまま出力されます. ( a → a, あ → ア, 1 → 1 )

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrHiragana(   string str )

機能 文字列に含まれるカタカナ(半角・全角)を全角ひらがなに変換して返します.
引数
str 対象文字列
戻り値
変換後の文字列
説明

文字列str中のカタカナ(半角・全角)を,全角ひらがなに変換して返します. ( ア → あ , ア → あ )

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StriComp(
  string str1,
  string str2 )

機能 大文字,小文字を区別せずに,二つの文字列を辞書順に比較します.
引数
str1 比較文字列
str2 比較文字列
戻り値
StrCompを参照
説明

文字列str1と文字列str2を辞書順に比較します. 大文字,小文字の区別をしません.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrIndexOf(
  string str,
  string trg,
  int from )

機能 対象文字列の検索開始位置以降で最初にキー文字列が現れる位置を返します.
引数
str 対象文字列
trg キー文字列
from 検索開始位置
戻り値
0以上キー文字列が現れる位置
-1キー文字列が存在しない
説明

対象文字列の検索開始位置以降で最初にキー文字が現れる位置を返します. 対象文字列strの検索開始位置fromから文字列の末尾へスキャンし, 最初に現れるキー文字列(trg)の位置を返します. このときの戻り値は対象文字列の先頭からの文字数です.

対象文字列の先頭にキー文字列が見つかった場合は0を返します. キー文字列が見つからない場合は-1を返します.

例1
StrIndexOf( "the PersonaWare that makes...", "PersonaWare", 0 ) → 4
StrIndexOf( "the PersonaWare that makes...", "persona", 0 ) → -1(見つからない)
StrIndexOf( "the PersonaWare that makes...", "th", 0 ) → 0
StrIndexOf( "the PersonaWare that makes...", "th", 3 ) → 16
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrJoin(
  string sep,
  string src[] )
[3.00以降]

機能文字列配列内の全ての要素を指定されたセパレーターで連結した文字列を返します.
引数
sepセパレーター
src[]連結したい文字列配列
戻り値
連結した文字列
例1
string tok[];
tok[0]="aa";
tok[1]="bb";
tok[2]="cc";
Talk( StrJoin( "/", tok ) );  //出力は'aa/bb/cc'
Talk( StrJoin( "\n", tok ) ); //出力は'aa\nbb\ncc'
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrKatakana(   string str )

機能 文字列に含まれる全角ひらがなを全角カタカナに変換して返します.
引数
str 対象文字列
戻り値
変換後の文字列
説明

文字列中の全角ひらがなを,全角カタカナに変換して返します. ( あ → ア )

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrLen(   string str )

機能 対象文字列の長さを(バイト数)返します.
引数
str 対象文字列
戻り値
対象文字列のバイト数
説明

対象文字列strの長さを返します. 長さは1バイト単位で評価され, 2バイト文字は2バイトとしてカウントされます.

例1
StrLen( "PersonaWare" ) → 11
StrLen( "キャラリナ" ) → 10
StrLen( "subject:こんにちは" ) → 18
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrLenmb(   string str )

機能 2バイト文字を1文字と数えたときの,文字列strの文字数を返します.
引数
str 対象文字列
戻り値
対象文字列の長さ
説明

2バイト文字を1文字と数えたときの,文字列strの長さを返します.

例1
StrLenmb( "PersonaWare" ) → 11
StrLenmb( "キャラリナ" ) → 5
StrLenmb( "subject:こんにちは" ) → 13
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrLower(   string str )

機能 文字列中の大文字のアルファベットを小文字に変換します.
引数
str 対象文字列
戻り値
変換後の文字列
説明

文字列strに含まれる大文字のアルファベットを小文字に変換します. 半角の大文字アルファベットは半角小文字アルファベットに, 全角の大文字アルファベットは全角小文字アルファベットに変換します.

例1
( A → a, A → a )
StrLower( "PersonaWare上でキャラクターを動かす" ) → "personaware上でキャラクターを動かす"
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrLSearch(
  string src,
  string trgclist )

機能 文字列が,指定した文字集合を含んでいるかを調べます.
引数
src 対象文字列
trgclist 文字集合
戻り値
0含まない
1含む
説明

対象文字列strに,文字集合trgclistの中のどれか一文字でも含まれていれば1を, なければ0を返します.trgclistは1バイト文字単位で評価されます.

例1
StrLSearch( "about" , "abc" ) → 1 (aまたはbが一致する)
StrLSearch( "out" , "abc" ) → 0 (どれも一致しない)
StrLSearch( "personaware" , "defghijk" ) → 1 (eが一致する)
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrnComp(
  string str1,
  string str2,
  int n )

機能 二つの文字列の先頭からnバイト目までを比較対象とします.
引数
str1 比較文字列
str2 比較文字列
n 比較する文字数
戻り値
StrCompを参照
説明

文字列str1と文字列str2の, それぞれ先頭からnバイト目までを辞書順に比較します. 文字列str1と文字列str2を辞書順に比較します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrnCompmb(
  string str1,
  string str2,
  int n )

機能 2バイト文字を考慮して, 二つの文字列の先頭からn文字までを辞書順に比較します.
引数
str1 比較文字列
str2 比較文字列
n 比較する文字数
戻り値
StrCompを参照
説明

文字列str1と文字列str2の先頭からn文字までを辞書順に比較します. 2バイト文字を1文字として数えます.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrniComp(
  string str1,
  string str2,
  int n )

機能 大文字,小文字を区別せず,二つの文字列の先頭からnバイト目まで を辞書順に比較します.
引数
str1 比較文字列
str2 比較文字列
n 比較する文字数
戻り値
StrCompを参照
説明

文字列str1と文字列str2の,それぞれ先頭からnバイト目までを辞書順に比較します.大文字,小文字の区別をしません.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrniCompmb(
  string str1,
  string str2,
  int n )

機能 2バイト文字を考慮し,大文字小文字を区別せずに 二つの文字列の先頭からn文字までを辞書順に比較します.
引数
str1 比較文字列
str2 比較文字列
n 比較する文字数
戻り値
StrCompを参照
説明

文字列str1と文字列str2の先頭からn文字までを辞書順に比較します. 大文字,小文字の区別をしません. 2バイト文字は1文字として数えます.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrnSet(
  string str,
  char c,
  int n )

機能 文字列strの先頭からnバイト目までを文字cで置き換える.
引数
str 対象文字列
c 置換文字
n 置換文字数
戻り値
置換された文字列
説明

文字列strの,先頭からn文字目までを文字cで置き換えた文字列を返します. 変換後もstrの値は変化しません.

例1
StrnSet( "PersonaWare", "Z", 5 ) → "ZZZZZZaWare"
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrnSetmb(
  string str,
  char c,
  int n )

機能 文字列strの先頭からn文字目(2バイト文字を1文字と数える)までを文字cで置き換える.
引数
str 対象文字列
c 置換文字
n 置換文字数
戻り値
置換された文字列
説明

文字列strの,先頭からn文字目までを文字cで置き換えた文字列を 返します.2バイト文字は1文字とみなします.2バイト文字は置換 文字2文字に変換されます.変換後もstrの値は変化しません.

例1
StrnSetmb( "キャラリナ", "Z", 3 ) → "ZZZZZZリナ"
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrReplace(
  string str,
  string search,
  string replace )
[2.00以降]

機能 文字列を置換します.
引数
str 置換対象文字列
search 検索キーワード
replace 置換キーワード
戻り値
置換結果
説明 置換対象文字列に含まれる検索キーワードを置換キーワードで置換 し,その結果を返します.
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrReverse(   string str )

機能 文字列を反転して返します.
引数
str 対象文字列
戻り値
反転後の文字列
説明

文字列strを末尾から先頭に向かって並べ替えた結果を返します. StrReverse( "ABC" )は"CBA"を返します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrReversemb(   string str )

機能 2バイト文字を含む文字列を反転して返します.
引数
str 対象文字列
戻り値
反転後の文字列
説明

文字列strを末尾から先頭に向かって並べ替えた結果を返します. StrReversemb( "キャラリナ" )は "ナリラャキ"を返します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

int StrSearch(
  string src,
  string trg )

機能 文字列に特定の文字列が含まれているかを調べます.
引数
src 対象文字列
trg 検索文字列
戻り値
1含まれている
0含まれていない
説明

対象文字列srcに検索文字列trgが含まれているかを調べます.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrSet(
  string str,
  char c )

機能 文字列の全文字を文字cで置き換える.
引数
str 対象文字列
c 置換文字
戻り値
置換後の文字列
説明

文字列strを構成する全ての文字を文字cで置き換えた文字列を返します. 変換後もstrの値は変化しません. 変換後の文字列は,strと同じ長さの文字cで構成される文字列になります.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrSubstring(
  string str,
  int begin,
  int end )

機能 文字列の一部を取得します.
引数
str 対象文字列
begin 開始位置
end 終了位置
戻り値
文字列抜き出した文字列
NULL失敗
説明

strの一部をコピーして新しい文字列を返します. コピーする範囲はbegin,end引数で指定します. 引数にstrの先頭からのバイト数を指定します. 先頭文字を指定するには0を指定します. begin==endの条件を満たす場合は1バイトの文字列を返します.

begin,end引数がstrの範囲外である場合, またはbegin<=endの条件を満たさない場合は失敗します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrSubstringmb(
  string str,
  int begin,
  int end )

機能 2バイト文字を考慮したStrSubstring関数です.
引数
str 対象文字列
begin 開始位置
end 終了位置
戻り値
文字列抜き出した文字列
NULL失敗
説明

2バイト文字を考慮して文字列の一部をコピーし, 新しい文字列を作ります. コピーする範囲はbegin,end引数で指定します. 引数には対象文字列の先頭からの文字数を指定します. 1バイト文字を1文字,2バイト文字を1文字として計算します. 先頭の文字は0で指定します

begin,end引数がstrの範囲外である場合, またはbegin<=endの条件を満たさない場合は失敗します.

例1
        
str = StrSubstringmb( "キャラリナ", 1, 3 );
str → "ャラリ"が入る
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrToken(
  string src,
  string dlim,
  int n )

機能 指定された区切り子で文字列をトークンに分解し,指定されたトークンを返します.
引数
src 対象文字列
dlim 区切り子文字列
n トークン指定
戻り値
NULL以外トークン
NULL該当するトークンが無い
説明

対象文字列srcを区切り子dlimのあるところでトークンに分解し, 先頭から(n+1)番目のトークンを返します. nが0のとき一つ目のトークンを返します.

連続して現れる区切り子delimは,一つの区切り子として扱います. 行頭,行末にある区切り子は無視されます.

例1
string youbi;
string src = "日,月,火,水,木,金,土";
youbi = StrToken( src, ",", Day() );
Talk( "今日は" + youbi + "曜日です." );
srcには,(カンマ)で区切られて曜日が入っています.
ここで,Day()は現在の曜日を0〜6で返すので,たとえば日曜日の場合には,Day()で0が返り,最初のトークン(日)がyoubiに入ります.
srcの中にdlimが一個もなかった場合は,一度も区切られないので,n=0のとき以外の返り値はNULLになります. 

区切り子dlimが複数回連続する場合は,一つの区切り子とみな します.また,行頭,行末の区切り子は無視します.

tok = StrToken( ",,abc,,,def,,,", "," , 0 ); // tokは "abc" になる
tok = StrToken( ",,abc,,,def,,,", "," , 1 ); // tokは "def" になる
tok = StrToken( ",,abc,,,def,,,", "," , 2 ); // tokは NULL になる
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrTokenmb(
  string src,
  string dlim,
  int n )

機能 2バイト文字を考慮したStrToken関数です.
引数
src 対象文字列
dlim 区切り子文字列
n トークン指定
戻り値
NULL以外トークン
NULL該当するトークンが無い
説明

2バイト文字を含む文字列からトークンを取得する場合に使用します. 2バイト文字を考慮している以外はStrTokenと同じです.

例1
tok = StrTokenmb( ",,あ,,,い,,,", "," , 0 ); // tokは "あ" になる
tok = StrTokenmb( ",,あ,,,い,,,", "," , 1 ); // tokは "い" になる
tok = StrTokenmb( ",,あ,,,い,,,", "," , 2 ); // tokは NULL になる
      
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrTrim(   string str )[2.00以降]

機能 文字列の先頭部分および末尾部分の空白と制御文字(タブ,リターン コード)を取り除きます.
引数
str 処理する文字列
戻り値
処理結果
説明 文字列の先頭部分および末尾部分の半角スペースとタブコード,リター ンコード)を削除し,その結果を返します.文字列の先頭から文字を 走査し,削除対象文字以外の文字が見つかった位置までを削除します. 文字列末尾から先頭に向かってスキャンし,削除対象文字以外の文字 が見つかった位置までを削除します.
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrTrimLeft(   string str )[2.00以降]

機能 文字列の先頭部分の空白と制御文字(タブ,リターンコード)を取り除 きます.
引数
str 処理する文字列
戻り値
処理結果
説明 文字列の先頭部分の半角スペースとタブコード,リターンコード)を 削除し,その結果を返します.文字列の先頭から文字を走査し,削除 対象文字以外の文字が見つかった位置までを削除します.
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrTrimRight(   string str )[2.00以降]

機能 文字列の末尾部分の空白と制御文字(タブ,リターンコード)を取り除 きます.
引数
str 処理する文字列
戻り値
処理結果
説明 文字列の尾部分の半角スペースとタブコード,リターンコード)を削 除し,その結果を返します.文字列末尾から先頭に向かってスキャン し,削除対象文字以外の文字が見つかった位置までを削除します.
このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧

string StrUpper(   string str )

機能 文字列中の小文字のアルファベットを大文字に変換します.
引数
str 対象文字列
戻り値
変換後の文字列
説明

文字列strに含まれる小文字のアルファベットを大文字に変換します. 半角の小文字アルファベットは半角大文字アルファベットに, 全角の小文字アルファベットは全角大文字アルファベットに変換します.

このカテゴリのトップ| カテゴリ別関数一覧| 関数名一覧