2012年5月13日日曜日

[VBScript] Replace関数


■構文
Replace(expression, find, replace[, start[, count[, compare]]])

■説明
文字列の一部を別の文字列へ指定された回数分置換して返します。
第一引数:置換対象文字列を指定します。
第ニ引数:置換該当文字列を指定します。
第三引数:置換該当文字列を置換する文字列を指定します。
第四引数:(省略可能)置換該当文字列を検索開始する位置を指定します。省略時1になります。
第五引数:(省略可能)置換する文字列数を指定します。省略時-1となり全て置換されます。
第六引数:(省略可能)文字列比較の比較モードを指定。省略時、Option Compareステートメントの設定にしたがいます。
定数説明
vbUseCompareOption-1Option Compare ステートメントの設定を使用して比較を行います。
vbBinaryCompare0バイナリ モードの比較を行います。
vbTextCompare1テキスト モードの比較を行います。

■サンプルコード
Option Explicit

Wscript.Echo Replace("検索文字列", "検索", "置換")

'Start,Countオプション Startで指定した検索位置より前は返さないことに注意
Wscript.Echo Replace("1a3a5a7a9a", "a", "*")
Wscript.Echo Replace("1a3a5a7a9a", "a", "*", 1, 2)
Wscript.Echo Replace("1a3a5a7a9a", "a", "*", 3, 2)
Wscript.Echo Replace("1a3a5a7a9a", "a", "*", 5, 2)


'文字列比較、デフォルト(バイナリモード)、テキストモードの比較
'大文字/小文字
Wscript.Echo Replace("Aa", "A", "*")
Wscript.Echo Replace("Aa", "A", "*", 1, -1, vbTextCompare)
'全角/半角
Wscript.Echo Replace("AA", "A", "*")
Wscript.Echo Replace("AA", "A", "*", 1, -1, vbTextCompare)
'ひらがな/カタカナ
Wscript.Echo Replace("あア", "あ", "*")
Wscript.Echo Replace("あア", "あ", "*", 1, -1, vbTextCompare)

0 件のコメント: