 | | Wide Studio Object Reference
| |
クラスの型
WSCstring
メソッド関数仕様
WSCstring 関数の説明
- 書式
- WSCstring()
- 機能
- WSCstring クラスのデフォルトのコンストラクタです。
文字列クラスのインスタンスを一つ作成します。
- 処理
-
- 引数
- なし。
- 返値
- 文字列クラスのインスタンスへのポインタ
- 注意
-
- サンプル
-
WSCstring str;
str = "文字列";
printf("str=%s\n",(char*)str);
WSCstring 関数の説明
- 書式
- WSCstring(char* str,long encoding = WS_EN_DEFAULT)
- 機能
- WSCstring クラスの初期値に文字列を取るコンストラクタです。
文字列クラスのインスタンスを一つ作成します。
文字列とその文字列のエンコーディング定数を指定します。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
- 文字列とその文字列のエンコーディング定数を指定します。
- 引数
-
(in)char* str | 文字列 |
(in)long encoding | 文字列のエンコーディング |
エンコーディングに指定できる値には、
次のようなものがあります。
属性値 | 意味 |
WS_EN_DEFAULT | 現在のデフォルトのエンコーディングを指定(省略時の値) |
WS_EN_LOCALE | 現在の LANG 環境変数の設定を指定 |
WS_EN_NONE | 設定を行わない |
WS_EN_ISO8859_1 | ISO8859(1) を指定 |
WS_EN_ISO8859_2 | ISO8859(2) を指定 |
WS_EN_ISO8859_3 | ISO8859(3) を指定 |
WS_EN_ISO8859_4 | ISO8859(4) を指定 |
WS_EN_ISO8859_5 | ISO8859(5) を指定 |
WS_EN_ISO8859_6 | ISO8859(6) を指定 |
WS_EN_ISO8859_7 | ISO8859(7) を指定 |
WS_EN_ISO8859_8 | ISO8859(8) を指定 |
WS_EN_ISO8859_9 | ISO8859(9) を指定 |
WS_EN_ISO8859_10 | ISO8859(10) を指定 |
WS_EN_ISO8859_11 | ISO8859(11) を指定 |
WS_EN_ISO8859_12 | ISO8859(12) を指定 |
WS_EN_ISO8859_13 | ISO8859(13) を指定 |
WS_EN_ISO8859_14 | ISO8859(14) を指定 |
WS_EN_ISO8859_15 | ISO8859(15) を指定 |
WS_EN_UTF8 | ユニコード(UTF8)を指定 |
WS_EN_KOI8R | KOI8R を指定 |
WS_EN_EUCJP | EUCJP を指定 |
WS_EN_SJIS | SJIS を指定 |
WS_EN_EUCKR | EUCKR を指定 |
WS_EN_EUCCN | EUCCN を指定 |
WS_EN_BIG5 | BIG5 を指定 |
- 返値
- 文字列クラスのインスタンスへのポインタ
- 注意
-
- サンプル
-
//EUCJP コードで文字列を設定する場合
WSCstring str("文字列",WS_EN_EUCJP);
printf("str=%s\n",(char*)str);
WSCstring 関数の説明
- 書式
- WSCstring(WSCstring& str)
- 機能
- 文字列クラスのコピーコンストラクタです。
文字列クラスのインスタンスをコピーします。
- 処理
-
- 引数
-
(in)WSCstring& str | 文字列インスタンス |
- 返値
- 文字列クラスのインスタンスへのポインタ
- 注意
-
- サンプル
-
WSCstring str("文字列");
WSCstring str2 = str;
printf("str2=%s\n",(char*)str2);
setString 関数の説明
- 書式
- void setString(char* str,long encode = WS_EN_DEFAULT)
- 機能
- 文字列を設定する関数です。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
-
- 引数
-
(in)char* str | 文字列 |
(in)long encoding | エンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str;
str.setString("文字列",WS_EN_EUCJP);
printf("str=%s\n",(char*)str);
getString 関数の説明
- 書式
- char* getString(long encode = WS_EN_DEFAULT)
- 機能
- 指定されたエンコーディングで文字列を取得する関数です。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
-
- 引数
-
(in)long encoding | エンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- 指定されたエンコーディングの文字列
- 注意
- 返された文字列を解放してはいけません。
- サンプル
-
WSCstring str;
str.setString("文字列",WS_EN_EUCJP);
printf("str=%s\n",str.getString());
getChars 関数の説明
- 書式
- long getChars()
- 機能
- 現在設定されている文字列の文字数を取得する関数です。
文字列に全角文字が含まれている場合、
全角一文字も1とカウントします。
したがって、"文字列N個" の実行結果は
5になる点に注意してください。
- 処理
-
- 引数
- なし。
- 返値
- 文字列のキャラクタ数
- 注意
-
- サンプル
-
WSCstring str;
str.setString("文字列",WS_EN_EUCJP);
printf("str=%d\n",str.getChars()); //3 が返されます。
getEncoding 関数の説明
- 書式
- long getEncoding()
- 機能
- 現在設定されている文字列のエンコーディングを取得する関数です。
- 処理
-
- 引数
- なし。
- 返値
- エンコーディング
返されるエンコーディングの種類は、
WSCstring(char*,long) を参照ください。
- サンプル
-
WSCstring str;
str.setString("文字列",WS_EN_EUCJP);
printf("encoding=%d\n",str.getEncoding()); //WS_EN_EUCJP = 20 が返されます。
- 注意
-
isExist 関数の説明
- 書式
- long isExist(char* str,long encoding = WS_EN_DEFAULT)
- 機能
- 引数に与えた文字列の位置を取得する関数です。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
指定した文字列が存在しなかった場合は、-1が返されます。
- 処理
-
- 引数
-
(in)char* str | 文字列 |
(in)long encoding | エンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- キャラクタ数による存在した位置、存在しなかった場合は、-1。
- 注意
-
- サンプル
-
if (str.isExist("文字") == -1){
//"文字"が存在しなかった場合
}else{
//"文字"が存在した場合
}
addString 関数の説明
- 書式
- void addString(const WSCstring& str)
- 機能
- 文字列の末尾に、WSCstring 型の引数で
与えられた文字列を追加する関数です。
- 処理
-
- 引数
-
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列");
WSCstring str2("追加");
str.addString(str2);
printf("str=%s\n",(char*)str); //"文字列追加"が表示されます。
addString 関数の説明
- 書式
- void addString(const WSCvariant& str,long encoding=WS_EN_DEFAULT)
- 機能
- 文字列の末尾に、WSCvariant 型の引数で与えられた
文字列を追加する関数です。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
-
- 引数
-
(in)WSCvariant& str | 文字列 |
(in)long encoding | エンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列",WS_EN_EUCJP);
WSCvariant val;
val = "追加";
str.addString(val,WS_EN_EUCJP);
printf("str=%s\n",(char*)str); //"文字列追加"が表示されます。
addString 関数の説明
- 書式
- void addString(char* str,long encoding=WS_EN_DEFAULT)
- 機能
- 文字列の末尾に、char* 型の引数で与えた
文字列を追加する関数です。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
-
- 引数
-
(in)cha* str | 文字列 |
(in)long encoding | エンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列",WS_EN_EUCJP);
str.addString("追加",WS_EN_EUCJP);
printf("str=%s\n",(char*)str); //"文字列追加"が表示されます。
cutString 関数の説明
- 書式
- void cutString(WSCulong pos);
- 機能
- 文字列の指定された文字位置以降を削除する関数です。
文字列位置は先頭が0で、getChars() で得られる文字数-1までの
範囲を指定できます。
範囲外が指定された場合は無視されます。
- 処理
-
- 引数
-
(in)WSCulong pos | 先頭を 0 としたカットしたい文字の位置 |
0 を指定すると、文字列を全て削除します。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列",WS_EN_EUCJP);
str.cutString(2);
printf("str=%s\n",(char*)str); //"文字"が表示されます。
insertString 関数の説明
- 書式
- void insertString(WSCulong pos,WSCstring& str);
- 機能
- 指定されたキャラクタ位置に文字列を挿入する関数です。
文字列位置は先頭が0で、getChars() で得られる文字数-1までの
範囲を指定できます。
範囲外が指定された場合は無視されます。
- 処理
-
- 引数
-
(in)WSCulong pos | 先頭を 0 とした挿入したい文字の位置 |
(in)WSCstring& str | 文字列 |
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列",WS_EN_EUCJP);
WSCstring str2("挿入",WS_EN_EUCJP);
str.insertString(0,str2);
printf("str=%s\n",(char*)str); //"挿入文字列"が表示されます。
deleteChar 関数の説明
- 書式
- void deleteChar(WSCulong pos)
- 機能
- 指定された位置の1文字を削除する関数です。
文字列位置は先頭が0で、getChars() で得られる文字数-1までの
範囲を指定できます。
範囲外が指定された場合は、無視されます。
- 処理
-
- 引数
-
(in)WSCulong pos | 先頭を 0 としたカットしたい文字の位置 |
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列",WS_EN_EUCJP);
str.deleteChar(2);
printf("str=%s\n",(char*)str); //"文字"が表示されます。
deleteChars 関数の説明
- 書式
- void deleteChars(WSCulong pos,WSCulong len)
- 機能
- 文字列の指定された位置から指定された文字数を削除する関数です。
文字列位置は先頭が0で、getChars() で得られる文字数-1までの
範囲を指定できます。
範囲外が指定された場合は無視されます。
- 処理
-
- 引数
-
(in)WSCulong pos | 先頭を 0 としたカットしたい文字の位置 |
(in)WSCulong len | 削除したい文字の数 |
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列",WS_EN_EUCJP);
str.deleteChars(2,1);
printf("str=%s\n",(char*)str); //"文字"が表示されます。
clear 関数の説明
- 書式
- void clear()
- 機能
- 文字列を削除する関数です。
- 処理
-
- 引数
- なし。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列",WS_EN_EUCJP);
//設定された文字列をクリアするには、次のようにします。
str.clear();
delLineFeed 関数の説明
- 書式
- void delLineFeed()
- 機能
- 文字列中の改行文字を削除する関数です。
- 処理
-
- 引数
- なし。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列\n改行",WS_EN_EUCJP);
str.delLineFeed();
printf("str=%s\n",(char*)str); //"文字列改行"が表示されます。
delString 関数の説明
- 書式
- void delString(char* str,long num,long encoding = WS_EN_DEFAULT)
- 機能
- 指定された文字列を検索して、指定の個数分を削除する関数です。
削除する個数に 0 を指定すると、
一致した文字列をすべて削除します。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
-
- 引数
-
(in)char* str | 削除したい文字列 |
(in)long num | 削除する個数 |
(in)long encoding | エンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("文字列1文字列2文字列",WS_EN_EUCJP);
str.deleteString("文字列",1,WS_EN_EUCJP);
printf("str=%s\n",(char*)str); //"1文字列2文字列"が表示されます。
str.deleteString("文字列",0,WS_EN_EUCJP);
printf("str=%s\n",(char*)str); //"12"が表示されます。
delHeadSpace 関数の説明
- 書式
- void delHeadSpace();
- 機能
- 文字列の先頭にある半角スペースを削除する関数です。
- 処理
-
- 引数
- なし。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str(" 文字列",WS_EN_EUCJP);
str.delHeadSpace();
printf("str=%s\n",(char*)str); //"文字列"が表示されます。
to_upper 関数の説明
- 書式
- void to_upper();
- 機能
- 文字列に含まれる英小文字を、すべて大文字に変換する関数です。
数字、英大文字、全角文字に対しては影響を与えません。
- 処理
-
- 引数
- なし。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("abcABC");
str.to_upper();
printf("str=%s\n",(char*)str); //"ABCABC"が表示されます。
to_lower 関数の説明
- 書式
- void to_lower();
- 機能
- 文字列に含まれる英大文字を、すべて小文字に変換する関数です。
数字、英小文字、全角文字には影響を与えません。
- 処理
-
- 引数
- なし。
- 返値
- なし。
- 注意
-
- サンプル
-
WSCstring str("abcABC");
str.to_lower();
printf("str=%s\n",(char*)str); //"abcabc"が表示されます。
replaceString 関数の説明
- 書式
- long replaceString(char* src,char* dest,long num,long encoding= WS_EN_DEFAULT)
- 機能
- 第一引数に指定された文字列を、第二引数に指定された
文字列に置換する関数です。変換の回数を第三引数で指定し、
先頭から一致したものから順に行われます。
変換個数が0の場合は、すべての一致文字が対象になります。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
- src で指定された文字列を、dest で指定された文字列に
変換します。
num で指定された数分だけ一致したものを置換します。
num が 0 の場合、一致するものすべてを置換します。
- 引数
-
(in)char* src | 置換前文字列 |
(in)char* dest | 置換後文字列 |
(in)long num | 置換個数 |
(in)long encoding | 文字列のエンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- 置換された数
- 注意
-
- サンプル
-
WSCstring str("abcabcabc");
str.replaceString("abc","123",1);
printf("str=%s\n",(char*)str); //"123abcabc"が表示されます。
str.replaceString("abc","123",0);
printf("str=%s\n",(char*)str); //"123123123"が表示されます。
getWords 関数の説明
- 書式
- long getWords(char* sep,long encoding = WS_EN_DEFAULT)
- 機能
- WSCstring インスタンスを指定された文字列でワードに区切ったとき、
そのワード数を取得する関数です。
区切り文字を省略すると、空白で区切られたワード数を取得します。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
-
- 引数
-
(in)char* sep | 区切り文字列 |
(in)long encoding | 文字列エンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- 置換された数
- 注意
-
- サンプル
-
WSCstring str("ABC,abc,123");
long words = str.getWords(","); //3 が返されます。
long i;
for(i=0; i < words; i++){
WSCstring word = str.getWord(i,",");
long wordpos = str.getWordCharPos(i,",");
printf("word%d=%s\n",i,(char*)word); //ABC、abc、123 が順番に表示されます。
printf(" pos=%d\n",wordpos); //ABC、abc、123 の位置が表示されます。
}
getWordCharPos 関数の説明
- 書式
- long getWordCharPos(long no,char* sep,long encoding = WS_EN_DEFAULT)
- 機能
- WSCstring インスタンスを指定された文字列でワードに区切ったとき、
指定されたワード番号のワードがインスタンスの何文字目から
始まるかを取得する関数です。
先頭を 0 とした no 番目のワードの文字数位置を取得します。
ワード番号は0からワード数-1までの範囲で指定します。
区切り文字を省略すると、空白で区切られたワード数で
取得します。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
-
- 引数
-
(in)long no | ワード番号(0,1,2〜) |
(in)char* sep | 区切り文字列 |
(in)long encoding | 文字列のエンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- 指定されたワードの位置
- 注意
-
- サンプル
- getWords() を参照してください。
getWord 関数の説明
- 書式
- WSCstring getWord(long no,char* sep,long encoding = WS_EN_DEFAULT)
- 機能
- WSCstring インスタンスを指定された文字列で
ワードに区切ったとき、
指定されたワード番号のワードを返す関数です。
ワード番号は0からワード数-1の範囲で指定します。
区切り文字を省略すると、空白で区切られたワード数を取得します。
エンコーディングを省略するとWS_EN_DEFAULT が指定されたものと
みなされます。
- 処理
- sep で指定された文字列で区切られたワードで
先頭を 0 とした no 番目のワードを取得します。
sep と encoding を省略すると、空白で区切られた
ワードを取得します。
- 引数
-
(in)long no | ワード番号(0,1,2〜) |
(in)char* sep | 区切り文字列 |
(in)long encoding | 文字列エンコーディング |
指定できるエンコーディングは、WSCstring(char*,long) を
参照ください。
- 返値
- 指定されたワード
- 注意
-
- サンプル
- getWords() を参照してください。
getLines 関数の説明
- 書式
- long getLines()
- 機能
- 改行文字で区切られた行数を取得する関数です。
getWords("\n")と同等です。
- 処理
-
- 引数
- なし。
- 返値
- 行数
- 注意
-
- サンプル
-
WSCstring str("abc\nabc\nabc");
long lines = str.getLines(); //3 が返されます。
= オペレータの説明
- 書式
- WSCstring& operator = (const WSCstring& str);
- 機能
- 引数に WSCstring 型を取る代入オペレータです。
通常の算術演算子のように、右辺文字列を左辺文字列へ代入します。
- 処理
-
- 引数
-
(in)WSCstring& str | 代入したい文字列 |
- 返値
- 複写された文字列
- 注意
-
- サンプル
-
WSCstring str;
WSCstring str2("abc");
str = str2;
= オペレータの説明
- 書式
- WSCstring& operator = (char* str);
- 機能
- 引数に char* 型を取る代入オペレータです。
- 処理
-
- 引数
-
- 返値
- 複写された文字列
- 注意
-
- サンプル
-
WSCstring str;
str = "abc"; //代入
= オペレータの説明
- 書式
- WSCstring& operator = (const WSCvariant& str);
- 機能
- 引数に WSCvariant 型を取る代入オペレータです。
- 処理
-
- 引数
-
(in)WSCvariant& str | 代入したいデータ |
- 返値
- 複写された文字列
- 注意
-
- サンプル
-
WSCvariant str("abc");
WSCstring str2;
str2 = str; //WSCvarinat の代入
+= オペレータの説明
- 書式
- WSCstring& operator += (const WSCstring& str);
- 機能
- 引数に WSCstring 型を取る文字列追加オペレータです。
通常の算術演算子のように、左辺文字列の末尾に、
右辺文字列が追加されます。
- 処理
-
- 引数
-
(in)WSCstring& str | 追加したい文字列 |
- 返値
- 追加された文字列
- 注意
-
- サンプル
-
WSCstring str("abc");
WSCstring str2("ABC");
str += str2;
printf("str=%s\n",(char*)str); //"abcABC" が表示されます。
+= オペレータの説明
- 書式
- WSCstring& operator += (char* str);
- 機能
- 引数に char* 型を取る文字列追加オペレータです。
- 処理
-
- 引数
-
- 返値
- 追加された文字列
- 注意
-
- サンプル
-
WSCstring str("abc");
char* str2 = "ABC";
str += str2;
printf("str=%s\n",(char*)str); //"abcABC" が表示されます。
+= オペレータの説明
- 書式
- WSCstring& operator += (const WSCvariant& str);
- 機能
- 引数に WSCvariant 型を取る文字列追加オペレータです。
- 処理
-
- 引数
-
(in)WSCvariant& str | 追加したいデータ |
- 返値
- 追加された文字列
- 注意
-
- サンプル
-
WSCstring str("abc");
WSCvariant str2;
str2 = "ABC";
str += str2;
printf("str=%s\n",(char*)str); //"abcABC" が表示されます。
<< オペレータの説明
- 書式
- WSCstring& operator << (const WSCstring& str);
- 機能
- 引数に WSCstring 型を取る文字列追加オペレータです。
- 処理
-
- 引数
-
(in)WSCstring& str | 追加したい文字列 |
- 返値
- 追加された文字列
- 注意
-
- サンプル
-
WSCstring str("abc");
WSCstring str2("ABC");
str << str2;
printf("str=%s\n",(char*)str); //"abcABC" が表示されます。
<< オペレータの説明
- 書式
- WSCstring& operator << (char* str);
- 機能
- 引数に char* 型を取る文字列追加オペレータです。
- 処理
-
- 引数
-
- 返値
- 追加された文字列
- 注意
-
- サンプル
-
WSCstring str("abc");
char* str2 = "ABC";
str << str2;
printf("str=%s\n",(char*)str); //"abcABC" が表示されます。
<< オペレータの説明
- 書式
- WSCstring& operator << (const WSCvariant& str);
- 機能
- 引数に WSCvariant 型を取る文字列追加オペレータです。
- 処理
-
- 引数
-
(in)WSCvariant& str | 追加したいデータ |
- 返値
- 追加された文字列
- 注意
-
- サンプル
-
WSCstring str("abc");
WSCvariant str2;
str2 = "ABC";
str << str2;
printf("str=%s\n",(char*)str); //"abcABC" が表示されます。
+ オペレータの説明
- 書式
- WSCstring& operator + (const WSCstring& str);
- 機能
- 引数に WSCstring 型を取る文字列結合オペレータです。
- 処理
-
- 引数
-
(in)WSCstring& str | 結合したい文字列 |
- 返値
- 結合された文字列
- 注意
-
- サンプル
-
WSCstring str("abc");
WSCstring str2("ABC");
WSCstring str3;
str3 = str + str2;
printf("str3=%s\n",(char*)str3); //"abcABC" が表示されます。
+ オペレータの説明
- 書式
- WSCstring& operator + (char* str);
- 機能
- 引数に char* 型を取る文字列結合オペレータです。
- 処理
-
- 引数
-
- 返値
- 結合された文字列
- 注意
-
- サンプル
-
WSCstring str("abc");
char* str2 = "ABC";
WSCstring str3;
str3 = str + str2;
printf("str3=%s\n",(char*)str3); //"abcABC" が表示されます。
+ オペレータの説明
- 書式
- WSCstring& operator + (const WSCvariant& str);
- 機能
- 引数に WSCvariant 型を取る文字列結合オペレータです。
- 処理
-
- 引数
-
(in)WSCvariant& str | 結合したいデータ |
- 返値
- 結合された文字列
- 注意
-
- サンプル
-
WSCstring str("abc");
WSCvariant str2;
str2 = "ABC";
WSCstring str3;
str3 = str + str2;
printf("str3=%s\n",(char*)str3); //"abcABC" が表示されます。
Document Release 3.70 For Use with Wide Studio Release 3.70, Spring 2004 WideStudio Home | Up to Copyright(C) WideStudio Development Team, 1999-2004 | | Last modified: May. 25, 2004 | |