「Stringクラス」の版間の差分

提供:AB開発Wiki
ナビゲーションに移動検索に移動
(→‎メンバ・プロパティ: 宣言を追加)
(→‎Operator []: 説明記述)
94行目: 94行目:


==== Operator [] ====
==== Operator [] ====
要素を読み取ります。
  Function Operator[] (n As Long) As Byte
  Function Operator[] (n As Long) As Byte
n文字目の文字を返します。範囲外の場合動作は保障されません。


==== Operator []= ====
==== Operator []= ====

2006年9月30日 (土) 13:46時点における版

文字列を扱うクラスです。

クラスの機能

メンバ・プロパティ

Chars

Chars As *Byte

Stringが保持している文字列へのポインタです。これを通じて内容の読み取り・書き込みを行うことができます。

Length

Length As Long

Stringが保持している文字列の長さを表しています。基本的に書き換えないでください。

メソッド

コンストラクタ

Stringインスタンスを初期化します。

Sub String()

デフォルトコンストラクタ)空文字列を作ります。

Sub String(ByRef initStr As String)

(未実装)コピーコンストラクタです。initStrの内容で初期化します。

注意
現在実装されておらず、これを使用しようとすると変換演算子により*Byte引数のコンストラクタが呼ばれます。文字列中にナル文字を含むStringインスタンスを引数にする際には注意が必要です。
Sub String(ByVal initStr As *Byte)

initStrの内容で初期化します。initStrはヌル終端の文字列を指定します。

デストラクタ

Stringインスタンスの破壊時に呼ばれます。

Sub ~String()

文字列のメモリを解放します。

代入

Stringオブジェクトに文字列を割り当てます。

Sub Operator = (ByRef text As String)
Sub Operator = (ByVal text As *Byte)

Assign(text)と同じです。

Assign

Stringオブジェクトに文字列を割り当てます。

Sub Assign(ByRef text As String)
Sub Assign(ByVal text As *Byte)
Sub Assign(ByVal text As *Byte, ByVal length As Long)

textの内容をこのStringインスタンスへコピーします。

  • Stringを引数に取るものは、text.length文字コピーします。
  • *Byte単独を引数に取るものは、lstrlen(text)文字コピーします。
  • lengthを引数に取るものは、length文字分コピーします。

Swap

Sub Swap(ByRef x As String)

ZeroString

Function ZeroString(allocLength As Long) As LPSTR

StrPtr

文字列へのポインタを返します。

Function StrPtr() As LPSTR

Charsを返します。

LPSTR変換演算子

文字列へのポインタを得ます。

Function Operator () As LPSTR

StrPtr()呼び出しと等価です。

Insert

Function Insert(startIndex As Long, lpszText As LPSTR) As Long

Remove

Function Remove(startIndex As Long) As Long
Function Remove(startIndex As Long, count As Long) As Long


Replace

Sub Replace(oldChar As Byte, newChar As Byte)
Sub Replace(ByRef oldStr As String, ByRef newStr As String)
Sub Replace(oldStr As PCSTR, newStr As PCSTR)
Sub Replace(oldStr As PCSTR, oldLen As Long, newStr As PCSTR, newLen As Long)

Operator +

Function Operator+ (lpszText As LPSTR) As String
Function Operator+ (ByRef objString As String) As String

Operator &

Function Operator& (lpszText As LPSTR) As String
Function Operator& (ByRef objString As String) As String

Append

Sub Append(lpszText As LPSTR, textLength As Long)
Sub Append(text As LPSTR)
Sub Append(ByRef str As String)

Concat

Function Concat(lpszText As LPSTR, textLength As Long) As String

Operator []

要素を読み取ります。

Function Operator[] (n As Long) As Byte

n文字目の文字を返します。範囲外の場合動作は保障されません。

Operator []=

Sub Operator[]= (n As Long, c As Byte)

IndexOf

Function IndexOf(lpszText As LPSTR) As Long
Function IndexOf(lpszText As LPSTR, startIndex As Long) As Long
Function IndexOf(lpszText As LPSTR, startIndex As Long, count As Long) As Long

LastIndexOf

Function LastIndexOf(lpszText As LPSTR) As Long
Function LastIndexOf(lpszText As LPSTR, startIndex As Long) As Long
Function LastIndexOf(lpszText As LPSTR, startIndex As Long, count As Long) As Long

StartsWith

Function StartsWith(lpszText As LPSTR) As BOOL

EndsWith

Function EndsWith(lpszText As LPSTR) As BOOL

SubString

Function SubString(startIndex As Long) As String
Function SubString(startIndex As Long, length As Long) As String

IsNullOrEmpty

Function IsNullOrEmpty() As BOOL