[前へ] [目次へ] [次へ]

GameString (script/fgs/system.fges)


このクラスはゲーム文字列変数の擬似参照クラスです。
このクラスのインスタンスをゲーム変数に接続することにより、
ゲーム変数を通常の String 型のオブジェクトであるかのように扱えます。
ただしあくまで擬似参照であり、値自体はこのクラスのインスタンスのものが使われます。
自動的な同期はゲーム変数への接続時、およびこのクラスのクラスメンバメソッドによって行われた変更のみです。
接続中のゲーム変数が他の要因やインターフェイスによって変更された場合、明示的な同期操作が必要です。


●継承/注入

   wraps String

●インターフェイスとインターフェイスメソッド

   wraps IString
   wraps INativeString


●クラスメソッド

   このクラスはクラスメソッドを持っていません。

●クラスメンバメソッド

名前概要
public操作メソッド ConnectGlobalゲームグローバル文字列変数に接続します
public操作メソッド ConnectGroupゲームグループ文字列変数に接続します
public操作メソッド ConnectMapゲームマップ文字列変数に接続します
public操作メソッド ConnectEventゲームイベント文字列変数に接続します
public操作メソッド ConnectInstanceゲームインスタンス文字列変数に接続します
public操作メソッド ConnectSerialゲームシリアル文字列変数に接続します
public操作メソッド Load接続中のゲーム変数からこのオブジェクトに値を読み取ります
public操作メソッド Save接続中のゲーム変数へこのオブジェクトの値を書き込みます
public設定メソッド #operator=代入
public設定メソッド #operator+=加算代入
public操作メソッドconst #operator+加算
public比較・判定メソッドconst #operator==等価
public比較・判定メソッドconst #operator<より小さい
public比較・判定メソッドconst #operator>より大きい
public比較・判定メソッドconst #operator<=以下
public比較・判定メソッドconst #operator>=以上
public比較・判定メソッドconst #operator!=以外
public取得メソッドconst #operator[]指定した番号の文字を取得します
public操作メソッド Empty文字列用メモリを解放します
public操作メソッド Copy文字列をコピーします
public操作メソッド Concat文字列を結合します
public操作メソッド Chomp最後の改行を削除します
public操作メソッド Chop最後の1文字を削除します
public操作メソッド Insert文字列を挿入します
public操作メソッド MakeUpper保持する半角アルファベットを全て大文字にします
public操作メソッド MakeLower保持する半角アルファベットを全て小文字にします
public操作メソッド Replace文字列の一部を置換します
public操作メソッド Formatsprintfと同じ方法で書式整形します
public操作メソッドconst Regex独自形式正規表現を実行します
public操作メソッドconst RegexS独自形式正規表現を実行します
public操作メソッド URLEncode文字列をURLエンコードします
public操作メソッド URLDecodeURLエンコードされた文字列をデコードします
public操作メソッド EscapeCancelRegex正規表現エスケープを解除します
public操作メソッド EscapeRegex正規表現エスケープします
public操作メソッド EscapeCancelIniExIniExエスケープを解除します
public操作メソッド EscapeIniExIniExエスケープします
public操作メソッド EscapeCancelHTMLHTMLエスケープを解除します
public操作メソッド EscapeHTMLHTMLエスケープします
public操作メソッド EscapeCancelStringStringエスケープを解除します
public操作メソッド EscapeStringStringエスケープします
public操作メソッド FullPath2FileNameフルパスからファイル名を抽出します
public操作メソッド FullPath2FileNameExtフルパスからファイル名を抽出します
public操作メソッド FileName2FullPathファイル名をフルパスにします
public操作メソッド FullPath2Dirフルパスからディレクトリパスを抽出します
public操作メソッド LoadExePath実行中のEXEのあるディレクトリパスを取得します
public操作メソッド Base64EncodeBase64エンコードします
public操作メソッド BinTxtEncodeBinTxtエンコードします
public操作メソッド ConvertFromUTF8UTF-8デコードします
public操作メソッド Delete指定位置から文字列を削除します
public操作メソッド TrimLeft文字列の先頭から指定文字群を削除します
public操作メソッド TrimRight文字列の終端から指定文字群を削除します
public操作メソッド HalfChar2FullChar半角英数を全角英数に変換します
public操作メソッド FullChar2HalfChar全角英数を半角英数に変換します
public操作メソッド LoadClipBoardTextクリップボードの文字列をこのオブジェクトに代入します
public操作メソッド Prune指定位置以降の文字列を削除します

●クラス共有変数

   このクラスはクラス共有変数を持っていません。

●インスタンス変数

名前概要
internal getterゲーム変数から値を読み取るためのメソッド
internal setterゲーム変数へ値を書き込むためのメソッド
internal name接続中のゲーム変数名




GameString::ConnectGlobal

public Bool ConnectGlobal( INativeString name, INativeString? def=NULL)

   このオブジェクトを指定したゲームグローバル文字列変数に接続し、擬似参照として扱えるようにします。
   存在しないゲームグローバル文字列変数名を指定した場合、即座に def の値を持つゲームグローバル文字列変数が作成されます。
   
戻り値:接続に成功した場合は真を返します。

INativeString name :接続するゲームグローバル文字列変数名。
INativeString? def=NULL :対象のゲームグローバル文字列変数が存在しない時に使用するデフォルト値。
      空参照を指定した場合は "存在しないゲーム変数をロードしました" が指定されたものとして扱います。

先頭へ


GameString::ConnectGroup

public Bool ConnectGroup( INativeString name, INativeString? def=NULL)

   このオブジェクトを指定したゲームグループ文字列変数に接続し、擬似参照として扱えるようにします。
   存在しないゲームグループ文字列変数名を指定した場合、即座に def の値を持つゲームグループ文字列変数が作成されます。
   
戻り値:接続に成功した場合は真を返します。

INativeString name :接続するゲームグループ文字列変数名。
INativeString? def=NULL :対象のゲームグループ文字列変数が存在しない時に使用するデフォルト値。
      空参照を指定した場合は "存在しないゲーム変数をロードしました" が指定されたものとして扱います。

先頭へ


GameString::ConnectMap

public Bool ConnectMap( INativeString name, INativeString? def=NULL)

   このオブジェクトを指定したゲームマップ文字列変数に接続し、擬似参照として扱えるようにします。
   存在しないゲームマップ文字列変数名を指定した場合、即座に def の値を持つゲームマップ文字列変数が作成されます。
   
戻り値:接続に成功した場合は真を返します。

INativeString name :接続するゲームマップ文字列変数名。
INativeString? def=NULL :対象のゲームマップ文字列変数が存在しない時に使用するデフォルト値。
      空参照を指定した場合は "存在しないゲーム変数をロードしました" が指定されたものとして扱います。

先頭へ


GameString::ConnectEvent

public Bool ConnectEvent(editable INativeEventObject event, INativeString name, INativeString? def=NULL)

   このオブジェクトを指定したゲームイベント文字列変数に接続し、擬似参照として扱えるようにします。
   存在しないゲームイベント文字列変数名を指定した場合、即座に def の値を持つゲームイベント文字列変数が作成されます。
   
戻り値:接続に成功した場合は真を返します。

editable INativeEventObject event :接続するゲームイベント文字列変数を識別するイベントオブジェクト。
INativeString name :接続するゲームイベント文字列変数名。
INativeString? def=NULL :対象のゲームイベント文字列変数が存在しない時に使用するデフォルト値。
      空参照を指定した場合は "存在しないゲーム変数をロードしました" が指定されたものとして扱います。

先頭へ


GameString::ConnectInstance

public Bool ConnectInstance(editable INativeEventObject event, INativeString name, INativeString? def=NULL)

   このオブジェクトを指定したゲームインスタンス文字列変数に接続し、擬似参照として扱えるようにします。
   存在しないゲームインスタンス文字列変数名を指定した場合、即座に def の値を持つゲームインスタンス文字列変数が作成されます。
   
戻り値:接続に成功した場合は真を返します。

editable INativeEventObject event :接続するゲームインスタンス文字列変数を識別するイベントオブジェクト。
INativeString name :接続するゲームインスタンス文字列変数名。
INativeString? def=NULL :対象のゲームインスタンス文字列変数が存在しない時に使用するデフォルト値。
      空参照を指定した場合は "存在しないゲーム変数をロードしました" が指定されたものとして扱います。

先頭へ


GameString::ConnectSerial

public Bool ConnectSerial(editable INativeEventObject event, INativeString name, INativeString? def=NULL)

   このオブジェクトを指定したゲームシリアル文字列変数に接続し、擬似参照として扱えるようにします。
   存在しないゲームシリアル文字列変数名を指定した場合、即座に def の値を持つゲームシリアル文字列変数が作成されます。
   
戻り値:接続に成功した場合は真を返します。

editable INativeEventObject event :接続するゲームシリアル文字列変数を識別するイベントオブジェクト。
INativeString name :接続するゲームシリアル文字列変数名。
INativeString? def=NULL :対象のゲームシリアル文字列変数が存在しない時に使用するデフォルト値。
      空参照を指定した場合は "存在しないゲーム変数をロードしました" が指定されたものとして扱います。

先頭へ


GameString::Load

public Bool Load()

   接続中のゲーム変数からこのオブジェクトに値を読み取ります。
   このメソッドは接続中のゲーム変数がこのオブジェクト以外によって変更された場合に使用します。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値:処理に成功すると真を返します。

先頭へ


GameString::Save

public Bool Save()

   接続中のゲーム変数へこのオブジェクトの値を書込みます。
   このメソッドはインターフェイス経由などクラスメンバメソッド以外の方法で値を書き換えた場合に使用します。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値:処理に成功すると真を返します。

先頭へ


GameString::#operator=

public SelfType@ #operator=( IString v)

   このオブジェクトに v を代入します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

戻り値: this を返します。

IString v :代入する値を持つオブジェクト

先頭へ


GameString::#operator+=

public SelfType@ #operator+=( IString v)

   このオブジェクトに v を加算代入します。
   このメソッドは v の文字列をこのオブジェクトの文字列の後ろに連結します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

戻り値: this を返します。

IString v :加算代入する値を持つオブジェクト

先頭へ


GameString::#operator+

public SelfType #operator+( IString v)const

   このオブジェクトに v を加算した結果を返します。
   このメソッドは v の文字列をこのオブジェクトの文字列の後ろに連結します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

戻り値:処理結果を返します。

IString v :加算する値を持つオブジェクト

先頭へ


GameString::#operator==

public Bool #operator==( IString v)const

   このオブジェクトと v を等価比較した結果を返します。
   このメソッドは両辺の文字列が完全に一致した場合、真を返します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

戻り値:このオブジェクトと v が等価であれば真を返します。

IString v :比較する値を持つオブジェクト

先頭へ


GameString::#operator<

public Bool #operator<( IString v)const

   このオブジェクトが v より小さいか比較した結果を返します。
   このメソッドは両辺の文字列を文字コード順で比較した結果を返します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

戻り値:このオブジェクトが v より小さければ真を返します。

IString v :比較する値を持つオブジェクト

先頭へ


GameString::#operator>

public Bool #operator>( IString v)const

   このオブジェクトが v より大きいか比較した結果を返します。
   このメソッドは両辺の文字列を文字コード順で比較した結果を返します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

戻り値:このオブジェクトが v より大きければ真を返します。

IString v :比較する値を持つオブジェクト

先頭へ


GameString::#operator<=

public Bool #operator<=( IString v)const

   このオブジェクトが v 以下か比較した結果を返します。
   このメソッドは両辺の文字列を文字コード順で比較した結果を返します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

戻り値:このオブジェクトが v 以下であれば真を返します。

IString v :比較する値を持つオブジェクト

先頭へ


GameString::#operator>=

public Bool #operator>=( IString v)const

   このオブジェクトが v 以上か比較した結果を返します。
   このメソッドは両辺の文字列を文字コード順で比較した結果を返します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

戻り値:このオブジェクトが v 以上であれば真を返します。

IString v :比較する値を持つオブジェクト

先頭へ


GameString::#operator!=

public Bool #operator!=( IString v)const

   このオブジェクトが v 以外か比較した結果を返します。
   このメソッドは両辺の文字列が異なる場合、真を返します。

   このメソッドは最初に v から INativeString による取得を試みます。
   これに失敗した場合、 v.Get で値を取得します。

戻り値:このオブジェクトが v 以外の値であれば真を返します。

IString v :比較する値を持つオブジェクト

先頭へ


GameString::#operator[]

public SelfType #operator[]( IInteger v)const

   このオブジェクトの文字列の v 番目の文字を取得します。
   v は0起算、文字数ベースで指定します。
   このメソッドは文字数と v が等しい場合空文字列を返します。

   このメソッドは最初に v から INativeInteger による取得を試みます。
   これに失敗した場合、 v.Get を呼び出します。

戻り値:指定した一文字だけの文字列を返します。
   文字列の終端が指定された場合空文字列を返します。

IInteger v :取得する文字番号

先頭へ


GameString::Empty

public SelfType@ Empty()

   文字列用に割り当てているメモリを解放します。
   このメソッドを呼び出すと保持している文字列は削除され、空文字列になります。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。
   
戻り値: this を返します

先頭へ


GameString::Copy

public SelfType@ Copy( IString str, IInteger limit)

   このオブジェクトに str を limit バイトを上限にコピーします。
   これまでこのオブジェクトが保持していた文字列は消去されます。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。
   
   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に各引数からネイティブインターフェイスによる取得を試みます。
   これに失敗した場合、各インターフェイスの Get を呼び出します。

戻り値: this を返します

IString str :コピーする文字列
IInteger limit :コピー上限バイト数

先頭へ


GameString::Concat

public SelfType@ Concat( IString str, IInteger limit)

   このオブジェクトに str を limit バイトを上限に連結します。
   limit にはこのオブジェクトが元々保持していたバイト数は含みません。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。
   
   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に各引数からネイティブインターフェイスによる取得を試みます。
   これに失敗した場合、各インターフェイスの Get を呼び出します。

戻り値: this を返します

IString str :連結する文字列
IInteger limit :連結上限バイト数

先頭へ


GameString::Chomp

public SelfType@ Chomp()

   このオブジェクトの文字列が改行文字で終わっていた場合、最後の改行文字を削除します。
   改行文字で終わっていなかった場合、何も起こりません。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::Chop

public SelfType@ Chop()

   このオブジェクトの文字列から最後の1文字を削除します。
   このオブジェクトの文字列が空文字列だった場合、何も起こりません。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::Insert

public SelfType@ Insert( IString str, IInteger index)

   このオブジェクトの文字列に str を挿入します。
   index は挿入位置をバイト単位で指定します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。
   
   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に各引数からネイティブインターフェイスによる取得を試みます。
   これに失敗した場合、各インターフェイスの Get を呼び出します。

戻り値: this を返します

IString str :挿入する文字列
IInteger index :バイト単位の挿入位置

先頭へ


GameString::MakeUpper

public SelfType@ MakeUpper()

   このオブジェクトの文字列内の半角小文字アルファベットを全て大文字にします。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します。

先頭へ


GameString::MakeLower

public SelfType@ MakeLower()

   このオブジェクトの文字列内の半角大文字アルファベットを全て小文字にします。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します。

先頭へ


GameString::Replace

public Integer Replace( IString repold, IString repnew)

   このオブジェクトの文字列の repold に一致する部分を repnew に置換します。
   このメソッドは該当する部分を全て置換しますが、置換部分は重複しません。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは最初に引数から INativeString による取得を試みます。
   これに失敗した場合、 repold.Get および repnew.Get で値を取得します。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

戻り値:置換した数を返します。

IString repold :置換対象の文字列
IString repnew :置換する文字列

先頭へ


GameString::Format

public Integer Format( INativeString format,...)

   C/C++の sprintf とほぼ同じ書式ルールで文字列を整形し、このオブジェクトに保存します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは format 中の % で始まる書式指定と可変長引数を使って文字列を組み立てます。
   出力で % を表示したい場合は %% にエスケープする必要があります。
   書式ルール: % [フラグ] [最低幅] [.精度] 種類
   ●フラグ(省略可能)、同時に指定すると上手く動作しないフラグもあります
記述意味
-出力を左詰めします
+数値を出力する時、正の値でも + を出力します
0最低幅指定があり、出力幅が最低幅に満たない場合、スペースの代わりに0で埋めます
(スペース)数値を出力する時、正の値でもスペースを出力します
#16進数出力時に 0x が先頭に付与されます。また、小数出力時に省略を抑止します
,数値を出力する時、三桁ごとにカンマ区切りします

   ●最低幅(省略可能)
      出力の最低幅を指定します。
      出力の文字数がこの値より少ない場合、足りない部分にスペースを補完します。
      出力の文字数がこの値より大きい場合、無視されます。
      値の代わりに * を指定すると引数から INativeInteger で取得します。
      この値は最大400です。
   
   ●精度(省略可能)
      出力の最低幅を指定します。
      整数を出力する場合、最低桁数です。
      小数を出力する場合、小数点以下の桁数です。
      値の代わりに * を指定すると引数から INativeInteger で取得します。
      この値は最大400です。
   
   ●種類
記述引数型意味
dINativeInteger10進整数
xINativeInteger16進整数(文字はa-f、符号なし扱い)
XINativeInteger16進整数(文字はA-F、符号なし扱い)
fINativeFloat小数
eINativeFloat指数表記小数(e表記)
EINativeFloat指数表記小数(E表記)
gINativeFloat小数(fとeを自動切換え)
GINativeFloat小数(fとEを自動切換え)
sINativeString文字列
neditable INativeIntegerここまでに出力されたバイト数を出力します
pINativePointerポインタとして設定されているオブジェクトの情報

戻り値:このオブジェクトに保存された文字列のバイト単位の長さ

INativeString format :フォーマット指定文字列
可変長引数:フォーマットで指定した順に読み取ります

先頭へ


GameString::Regex

public Integer Regex( INativeString pattern, INativeString option,
      editable PStringArray? extract=NULL, INativeString? replace=NULL,
      editable PStringArray2D? all_extract=NULL, INativeInteger? start_index=NULL,
      editable PRegexMatchInfo? match_info=NULL)


   独自形式の正規表現を実行します。
   この正規表現は一般的に使われるPOSIX標準などの形式との互換性はありません。指定方法は後述します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

戻り値:マッチした数(繰り返し時のみ。繰り返しがない場合はマッチしたら1、しなければ0)

INativeString pattern :正規表現パターン文字列
INativeString option :マッチングオプション。以下の文字で指定、複数同時指定可能。
文字意味
g繰り返し
i大文字小文字を同一視する
s先頭から隙間無くマッチしなければならない
editable PStringArray? extract=NULL :[出力]有効な参照を指定すると抽出結果を保存します。
         この引数は繰り返しオプションが指定されている場合使用できません。その場合 all_extract を使用してください。
INativeString? replace=NULL :有効な参照を指定するとマッチ範囲をこの文字列で置換します。
         この文字列中では %% および %v %V 特殊文字が解釈されます。
         呼び出しホストが読み取り専用の場合、空参照でなければいけません。
editable PStringArray2D? all_extract=NULL :[出力]有効な参照を指定すると全てのマッチ時の抽出結果を保存します。
         この引数は繰り返しオプションが指定されている場合のみ使用します。
INativeInteger? start_index=NULL :有効な参照を指定すると評価を開始するバイト単位の位置として扱います。
         空参照である場合、文字列の先頭から評価を開始します。
editable PRegexMatchInfo? match_info=NULL :[出力]有効な参照を指定すると全てのマッチ範囲情報を保存します。

●パターン文字列の指定方法
   特殊文字は必ず%から始まります。指定パターンは以下の通りです。
   判定指定:
   +:最短マッチにする。
   *:最長マッチにする。
   !:否定にマッチする。(マッチした場合は長さ0)
   /:純粋最長マッチにする。(その先のパターンにマッチするかチェックしない)
   最低数:最低この数後続がマッチしないとマッチしない
   最高数:この数まで後続がマッチした場合は検索を終了する。
   番号:抽出オブジェクトがある場合、その要素番号。
   繰り返しが指定されている場合、一回ごとにリセットされる。
         
   基本形:%判定指定最低数(v,V,u,U,t,hのみ番号).最低数(v,V,u,U,t,hのみ),最大数指定文字
   1.固定指定。数量子は使用不可。
   %%:%文字
   2.グループ指定。
   %(〜%):指定した範囲をまとめる。)には数量子指定不可。
   %{〜%}:指定した範囲がマッチした場合、抽出する。}には数量子指定不可。
   %[〜%]:指定した範囲のオブジェクトのうち、いずれかに該当する場合にマッチする。
          ]には数量子指定不可。
   3.通常特殊文字
   %d:10進数字(0-9)に該当。
   %D:10進数字(0-9)以外に該当。
   %x:16進数字(0-9a-f)に該当。
   %X:16進数字(0-9A-F)に該当。
   %n:16進数字(0-9a-fA-F)に該当。
   %N:16進数字(0-9a-fA-F)以外に該当。
   %a:小文字アルファベット(a-z)に該当。
   %A:大文字アルファベット(A-Z)に該当。
   %w:ホワイトスペース(\t )に該当。
   %W:ホワイトスペースと改行(\t \r\n)に該当。
   %i:ホワイトスペース(\t )以外に該当。
   %I:ホワイトスペースと改行(\t \r\n)以外に該当。
   %l:全てのアルファベット(a-zA-Z)に該当。
   %L:全てのアルファベットと数字(a-zA-Z0-9)に該当。
   %b:全てのアルファベット(a-zA-Z)以外に該当。
   %B:全てのアルファベットと数字(a-zA-Z0-9)以外に該当。
   %y:1バイト記号(!"#$%&'()=~|`{+*}<>?_-^\@[;:],./)に該当。
   %Y:1バイト記号(!"#$%&'()=~|`{+*}<>?_-^\@[;:],./)以外に該当。
   %k:全ての1バイト可視文字(a-zA-Z0-9!"#$%&'()=~|`{+*}<>?_-^\@[;:],./)に該当。
   %K:全ての可視文字(%kに2バイト文字を加えたもの)に該当。
   %c:コントロールキャラクタ(0x01-0x1f,0x7f)に該当。
   %C:改行以外の(半、全とも)1文字に該当。
   %s:プログラム識別子(a-zA-Z0-9_)に該当。
   %S:プログラム識別子(a-zA-Z0-9_)以外に該当。
   %j:全ての文字(半、全とも)1文字に該当。
   %J:全ての全角1文字に該当。
   %?:全ての半角1文字に該当。
   %g:行頭に該当。
   %G:行末に該当。
   %^:文字列の先頭に該当。
   %$:文字列の最後に該当。
   %z:次のオブジェクトに該当。(%*zaの場合、aの最長マッチになる)
   
   4.参照文字
   %v:抽出済み配列に該当。番号指定は最初が0で後に向かう。番号指定がない場合は0とみなす。
   %V:抽出済み配列に該当。番号指定は最後が0で前に向かう。番号指定がない場合は0とみなす。
   5.範囲指定
   %-:この後に続く2文字の範囲に該当する。
         2文字には特殊文字や全角文字は使えない。
         オブジェクトの範囲を取るわけではないので注意。
   6.マッチング制御
   %p:これ以降の文字列はマッチ範囲から除外される。(ただしマッチしなければマッチは失敗する)
   %P:%pに加え、この直後で文字列が終了した場合もマッチに成功する。
   %e:抽出時のみ、抽出される範囲をここで終了する。
       その後もマッチは続行、%pと組み合わせた場合は抽出範囲はこっちが優先
   7.抽出済み配列操作
   %t:最後に抽出した文字列を番号指定値に代入する。番号指定がない場合は0とみなす。
       番号指定値が抽出した総数以上の場合は指定値まで配列が増え、隙間は空文字列で埋められる。
   %T:配列の最後に空文字列を追加する。
   %h:配列の番号指定値の要素を削除する。番号指定がない場合は0とみなす。
   %H:配列の最後の要素を削除する。


先頭へ


GameString::RegexS

public Integer RegexS( INativeString pattern, INativeString option,
      editable String? extract=NULL, INativeString? replace=NULL,
      editable PStringArray? all_extract=NULL, INativeInteger? start_index=NULL,
      editable PRegexMatchInfo? match_info=NULL)const


   独自形式の正規表現を実行します。
   この正規表現は一般的に使われるPOSIX標準などの形式との互換性はありません。指定方法は Regex を参照してください。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。
   
   このメソッドはマッチした各回の最初の抽出結果のみを保存します。
   パターン内に抽出がひとつだけ存在する場合に便利です。それ以外の動作は Regex と同じです。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

戻り値:マッチした数(繰り返し時のみ。繰り返しがない場合はマッチしたら1、しなければ0)

INativeString pattern :正規表現パターン文字列
INativeString option :マッチングオプション。以下の文字で指定、複数同時指定可能。
文字意味
g繰り返し
i大文字小文字を同一視する
s先頭から隙間無くマッチしなければならない
editable String? extract=NULL :[出力]有効な参照を指定すると抽出結果を保存します。
         この引数は繰り返しオプションが指定されている場合使用できません。その場合 all_extract を使用してください。
INativeString? replace=NULL :有効な参照を指定するとマッチ範囲をこの文字列で置換します。
         この文字列中では %% および %v %V 特殊文字が解釈されます。
         呼び出しホストが読み取り専用の場合、空参照でなければいけません。
editable PStringArray? all_extract=NULL :[出力]有効な参照を指定すると全てのマッチ時の抽出結果を保存します。
         この引数は繰り返しオプションが指定されている場合のみ使用します。
INativeInteger? start_index=NULL :有効な参照を指定すると評価を開始するバイト単位の位置として扱います。
         空参照である場合、文字列の先頭から評価を開始します。
editable PRegexMatchInfo? match_info=NULL :[出力]有効な参照を指定すると全てのマッチ範囲情報を保存します。

先頭へ


GameString::URLEncode

public SelfType@ URLEncode( IString str)

   str をURLエンコードしてこのオブジェクトに保存します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。
   
   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に str から INativeString による取得を試みます。
   これに失敗した場合、 str.Get を呼び出します。

戻り値: this を返します

IString str :エンコードする文字列

先頭へ


GameString::URLDecode

public SelfType@ URLDecode( IString str)

   str をURLデコードしてこのオブジェクトに保存します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。
   
   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に str から INativeString による取得を試みます。
   これに失敗した場合、 str.Get を呼び出します。

戻り値: this を返します

IString str :デコードする文字列

先頭へ


GameString::EscapeCancelRegex

public SelfType@ EscapeCancelRegex()

   このオブジェクトの文字列に施された正規表現用エスケープを解除します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::EscapeRegex

public SelfType@ EscapeRegex()

   このオブジェクトの文字列に正規表現用エスケープを施します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::EscapeCancelIniEx

public SelfType@ EscapeCancelIniEx()

   このオブジェクトの文字列に施された設定ファイル用エスケープを解除します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::EscapeIniEx

public SelfType@ EscapeIniEx()

   このオブジェクトの文字列に設定ファイル用エスケープを施します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::EscapeCancelHTML

public SelfType@ EscapeCancelHTML()

   このオブジェクトの文字列に施されたHTML用エスケープを解除します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::EscapeHTML

public SelfType@ EscapeHTML()

   このオブジェクトの文字列にHTML用エスケープを施します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::EscapeCancelString

public SelfType@ EscapeCancelString()

   このオブジェクトの文字列に施された文字列用エスケープを解除します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::EscapeString

public SelfType@ EscapeString()

   このオブジェクトの文字列に文字列用エスケープを施します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::FullPath2FileName

public Bool FullPath2FileName( IString str)

   フルパスの str からファイル名部分を抽出してこのオブジェクトに保存します。
   抽出されるファイル名に拡張子は含まれません。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に str から INativeString による取得を試みます。
   これに失敗した場合、 str.Get を呼び出します。

戻り値:抽出に成功すると真を返します

IString str :フルパスのファイル名

先頭へ


GameString::FullPath2FileNameExt

public Bool FullPath2FileNameExt( IString str)

   フルパスの str からファイル名部分を抽出してこのオブジェクトに保存します。
   抽出されるファイル名には拡張子を含みます。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に str から INativeString による取得を試みます。
   これに失敗した場合、 str.Get を呼び出します。

戻り値:抽出に成功すると真を返します

IString str :フルパスのファイル名

先頭へ


GameString::FileName2FullPath

public Bool FileName2FullPath( IString str)

   相対/絶対パスの str をフルパスに変換してこのオブジェクトに保存します。
   str が相対パスである場合、カレントディレクトリを使用して解決します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に str から INativeString による取得を試みます。
   これに失敗した場合、 str.Get を呼び出します。

戻り値:処理に成功すると真を返します

IString str :処理対象のファイル名

先頭へ


GameString::FullPath2Dir

public SelfType@ FullPath2Dir()

   このオブジェクトの文字列をフルパスとして、ファイル名部分を削除します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::LoadExePath

public SelfType@ LoadExePath()

   FGES VMを実行しているEXEファイルのあるディレクトリパスをこのオブジェクトに保存します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します

先頭へ


GameString::Base64Encode

public Bool Base64Encode( IBinary bin)

   bin の内容をBase64エンコードしてこのオブジェクトに保存します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは最初に bin から INativeBinary による取得を試みます。
   これに失敗した場合、 bin.Get を呼び出します。

戻り値:エンコードに成功すると真を返します

IBinary bin :エンコードするバイナリデータ

先頭へ


GameString::BinTxtEncode

public Bool BinTxtEncode( IBinary bin)

   bin の内容をBinTxtエンコードしてこのオブジェクトに保存します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは最初に bin から INativeBinary による取得を試みます。
   これに失敗した場合、 bin.Get を呼び出します。

戻り値:エンコードに成功すると真を返します

IBinary bin :エンコードするバイナリデータ

先頭へ


GameString::ConvertFromUTF8

public Bool ConvertFromUTF8( IBinary bin)

   bin の内容をUTF-8文字列とみなし、デコードしてこのオブジェクトに保存します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは最初に bin から INativeBinary による取得を試みます。
   これに失敗した場合、 bin.Get を呼び出します。

戻り値:デコードに成功すると真を返します

IBinary bin :デコードするバイナリデータ

先頭へ


GameString::Delete

public Bool Delete( IInteger index, IInteger count)

   このオブジェクトの文字列の一部を削除します。
   削除開始位置は index にバイト単位で指定し、 count バイトを削除します。
   count によって指定した範囲が文字列より長い場合、 index 以降の全ての文字列を削除します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは最初に各引数から INativeInteger による取得を試みます。
   これに失敗した場合、 IInteger@@Get を呼び出します。

戻り値:削除に成功すると真を返します

IInteger index :バイト単位の削除開始位置
IInteger count :削除するバイト数

先頭へ


GameString::TrimLeft

public SelfType@ TrimLeft( IString str="\t \n")

   このオブジェクトの文字列先頭から str に含まれる文字を削除します。
   このメソッドは str に含まれない文字を見つけると処理を終了します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に str から INativeString による取得を試みます。
   これに失敗した場合、 str.Get を呼び出します。

戻り値: this を返します。

IString str :削除対象の文字集合。1文字の集合として扱います。

先頭へ


GameString::TrimRight

public SelfType@ TrimRight( IString str="\t \n")

   このオブジェクトの文字列末尾から str に含まれる文字を削除します。
   このメソッドは文字列の末尾から処理し、 str に含まれない文字を見つけると処理を終了します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは引数に this と同じオブジェクトを使用すると例外が発生します。

   このメソッドは最初に str から INativeString による取得を試みます。
   これに失敗した場合、 str.Get を呼び出します。

戻り値: this を返します。

IString str :削除対象の文字集合。1文字の集合として扱います。

先頭へ


GameString::HalfChar2FullChar

public SelfType@ HalfChar2FullChar()

   このオブジェクトの文字列に含まれる半角文字を全角文字に変換します。
   このメソッドで変換されるのは英数字とスペースだけです。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します。

先頭へ


GameString::FullChar2HalfChar

public SelfType@ FullChar2HalfChar()

   このオブジェクトの文字列に含まれる全角文字を半角文字に変換します。
   このメソッドで変換されるのは英数字とスペースだけです。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

戻り値: this を返します。

先頭へ


GameString::LoadClipBoardText

public Bool LoadClipBoardText()

   システムのクリップボードに文字列がある場合、それをこのオブジェクトに保存します。
   クリップボードに文字列がない場合、失敗します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。
   
   文字列はCRLF改行です。必要な場合 Replace("\r\n","\n") で変換してください。
   
   注:クリップボードはWindows全体のデータ共有機構です。
      クリップボードへのアクセスは全てのアプリケーションで共有されます。

戻り値:文字列を取得できた場合真を返します。

先頭へ


GameString::Prune

public SelfType@ Prune( IInteger index)

   このオブジェクトの文字列を指定位置で打ち切り、以降を削除します。
   さらに、接続中のゲーム変数へ処理結果を書込みます。
   
   ゲーム変数に接続していない状態でこのメソッドを呼び出すと例外が発生します。

   このメソッドは最初に index から INativeInteger による取得を試みます。
   これに失敗した場合、 index.Get を呼び出します。

戻り値: this を返します。

IInteger index :バイト単位の打ち切る位置。

先頭へ


GameString::getter

internal BoundMethod getter

   接続中のゲーム変数から値を読み取るためのメソッド。

先頭へ


GameString::setter

internal BoundMethod setter

   接続中のゲーム変数へ値を書き込むためのメソッド。

先頭へ


GameString::name

internal String name

   接続中のゲーム変数名。

先頭へ


[前へ] [目次へ] [次へ]

最終更新 2023/01/30