VB6 リファレンス お品書き へ戻ります
Visual Basic6 リファレンス


VB6 文字列操作
変換、検索、パターンマッチング、切り取り、置換など、文字列に関する操作

お品書き
● 比較演算子2つの文字列を比較
● 文字列演算子複数の文字列を結合(連結)
● Asc文字を文字コードへ変換
● Chr文字コードを文字へ変換
● CStr値を文字列型(String)へ変換
● Format指定した書式に変換 (桁揃え)
● InStr文字列の前方検索
● InstrRev文字列の後方検索
● Len、LenB文字列の文字数、バイト数を取得
● Like文字列のパターンマッチング
● Mid、Left、Right文字列の切り取り
● Replace文字列の置換
● Split文字列のセパレータ分解
● StrConv文字列の変換
● Trim、LTrim、RTrim文字列の先頭、末尾のスペースを削除
● UCase、LCaseアルファベットの大文字、小文字変換


● 比較演算子
【機能】2つの文字列を比較します
【書式】
条件式意味
文字列1 = 文字列2文字列1 と 文字列2 は等しい
文字列1 <> 文字列2文字列1 と 文字列2 は等しくない
【 例 】 Dim str1 As String
str1 = "Hello"
If (str1 = "Hello") Then     '同じか?
    MsgBox "同じです"
End If
【 例 】 Dim str1 As String
str1 = "Hello"
If (str1 <> "HELLO") Then     '違うか?
    MsgBox "違います"
End If

  ※ VB6の等しいの条件式は if ( A = B ) です。VB6のソースを他の言語に移植する際に、if (A == B) に変更を忘れがちになります。ご注意を。


● 文字列演算子
【機能】複数の文字列を結合します
【書式】文字列1 & 文字列2
文字列1 & 文字列2 & 文字列3 ・・・
【 例 】 Dim str1 As String
Dim str2 As String
str1 = "Hello"
str2 = str1 & ", World."
 → "Hello, World."


● Asc 関数
【機能】文字に対応する文字コードを示す整数型 (Integer) の値を返します。
【書式】result = Asc ( 文字 )
【文字コード表】
  32 48 64 80 96 112
0   0 @ P   p
1 ! 1 A Q a q
2 " 2 B R b r
3 # 3 C S c s
4 $ 4 D T d t
5 % 5 E U e u
6 & 6 F V f v
7 ' 7 G W g w
8 ( 8 H X h x
9 ) 9 I Y i y
10 * : J Z j z
11 + ; K [ k {
12 , < L \ l |
13 - = M ] m }
14 . > N ^ n ~
15 / ? O _ o  
【 例 】result = Asc("A") → 65
result = Hex(Asc("A")) → 41


● Chr 関数
【機能】文字コードに対応する文字を示す文字列型 (String) の値を返します。
【書式】result = Chr ( 文字コード )
【 例 】result = Chr(34) → ダブルクォーテーション ( " )
result = Chr(9) → タブ (定数:vbTab)
result = Chr(13) & Chr(10) → 改行
result = Chr(&HD) & Chr(&HA) → 改行
【 例 】 Dim str1
str1 = "ダブルクォーテーション( " & Chr(34) & " ) を文字列に入れる"
→ "ダブルクォーテーション( " ) を文字列に入れる"


● CStr 関数
【機能】値を文字列型(String)へ変換します。
【書式】result = CStr ( 値 )
【 例 】result = CStr(100) → "100"
result = CStr(Now) → "2006/12/01 10:09:38"


● Format 関数
【機能】値を指定した書式に変換し、その文字列を返します。
【書式】result = Format ( 値 , 書式 )
書式意味
@1つの文字またはスペースを表します。値の中で、@ (アットマーク)に対応する位置に文字が存在する場合は、その文字が表示されます。文字がなければスペースが表示されます。@は、指定した書式の中に表示書式指定文字の ! (感嘆符) がない限り、右から左の順に埋められます。
&1つの文字を表します。値の中で & (アンパサンド) に対応する位置に文字が存在する場合は、その文字が表示されます。文字がなければ何も表示せず、詰められて表示されます。& は、指定した書式の中に表示書式指定文字の ! (感嘆符) がない限り、右から左の順に埋められます。
<小文字にします。すべての文字は小文字に変換されます。
>大文字にします。すべての文字は大文字に変換されます。
!文字を右から左ではなく、左から右の順に埋めていくように指定します。この文字を指定しない場合は、右から左の順に埋められます。
【 例 】result = Format( "ABC", "@@@@@" ) → "□□ABC" ※□は半角スペース
result = Format( "ABC", "!@@@@@" ) → "ABC□□" ※□は半角スペース


● InStr 関数
【機能】文字列を前方より検索し、最初に見つかった文字位置を返します。
【書式】
【書式】
result = InStr ( 検索対象文字列 , 検索文字列 )
result = InStr ( 検索開始位置 , 検索対象文字列 , 検索文字列 )
【 例 】result = InStr( "あいうえうえお", "うえ" ) → 3
result = InStr( 4, "あいうえうえお", "うえ" ) → 5

  ※ 検索文字列が見つからなかった場合は、0 が戻ります。


● InstrRev 関数
【機能】文字列を後方より検索し、最初に見つかった文字位置を返します。
【書式】
【書式】
result = InstrRev ( 検索対象文字列 , 検索文字列 )
result = InstrRev ( 検索対象文字列 , 検索文字列 , 検索開始位置 )
【 例 】result = InstrRev( "c:¥work¥temp¥test.txt", "¥" ) → 13
result = InstrRev( "c:¥work¥temp¥test.txt", "¥" , 12 ) → 8

  ※ 検索文字列が見つからなかった場合は、0 が戻ります。


● Len、LenB 関数
【機能】
【書式】
文字列の文字数を返します。
result = Len ( 文字列 )
【機能】
【書式】
文字列のバイト数を返します。
result = LenB ( 文字列 )
【 例 】result = Len("ABCあいう") → 6
result = LenB("ABCあいう") → 12
result = LenB(StrConv("ABCあいう", vbFromUnicode)) → 9


● Like 演算子
【機能】文字列の比較を行い、比較結果(True / False)を返します。
【書式】result = 比較文字列 Like パターン
パターン意味
?任意の1文字
*任意の数の文字
#任意の1文字の数字 (0-9)
[charlist]文字リスト charlist に指定した文字の中の任意の1文字
[!charlist]文字リスト charlist に指定した文字以外の任意の1文字
【 例 】result = "aBBBa" Like "a*a" → True
result = "F" Like "[A-Z]" → True
result = "F" Like "[!A-Z]" → False
result = "a2a" Like "a#a" → True
result = "aM5b" Like "a[L-P]#[!c-e]" → True
result = "BAT123khg" Like "B?T*" → True
result = "CAT123khg" Like "B?T*" → False


● Mid、Left、Right 関数
【機能】
【書式】
文字列の指定位置より指定文字数分の文字を切り取り、その文字列を返します。
result = Mid ( 対象文字列 , 切取開始位置 , 切取文字数 )
【機能】
【書式】
文字列の左端より指定文字数分の文字を切り取り、その文字列を返します。
result = Left ( 対象文字列 , 切取文字数 )
【機能】
【書式】
文字列の右端より指定文字数分の文字を切り取り、その文字列を返します。
result = Right ( 対象文字列 , 切取文字数 )
【 例 】result = Mid( "あいうえお", 2, 3 ) → "いうえ"
result = Left( "あいうえお", 3 ) → "あいう"
result = Right( "あいうえお", 3 ) → "うえお"


● Replace 関数
【機能】指定した文字列の一部を別の文字列に置換し、その文字列を返します。
【書式】
【書式】
result = Replace ( 置換対象文字列 , 検索文字列 , 置換文字列 )
result = Replace ( 置換対象文字列 , 検索文字列 , 置換文字列 , 検索開始位置 , 置換文字列数 )
検索開始位置省略すると、1 が使用されます。
置換文字列数省略すると、-1 が使用され、すべての候補が置換されます。
【 例 】result = Replace( "あいうえうえお", "うえ", "くけ" ) → "あいくけくけお"
【 例 】result = Replace( strBuff, vbTab, " " )   'タブをスペースへ変更


● Split 関数
【機能】文字列を指定のセパレータで分解して配列へ格納する
【書式】
【書式】
result = Split ( 文字列 , デリミッタ )
result = Split ( 文字列 )
【 例 】Dim strArry() As String
strArry = Split("AAA,BBB,CCC", ",")
strArry(0) → "AAA"
strArry(1) → "BBB"
strArry(2) → "CCC"

  ※ デリミッタ指定を省略した場合は、デリミッタはスペースになります。
  ※ デリミッタがタブの場合は、vbTab を指定します。


● StrConv 関数
【機能】変換した文字列を返します。
【書式】result = StrConv ( 変換対象文字列 , 変換タイプ )
変換タイプ(数値)意味
vbUpperCase1文字列を大文字に変換します。
vbLowerCase2文字列を小文字に変換します。
vbProperCase3文字列の各単語の先頭の文字を大文字に変換します。
vbWide4文字列内の半角文字 (1 バイト) を全角文字 (2 バイト) に変換します。
vbNarrow8文字列内の全角文字 (2 バイト) を半角文字 (1 バイト) に変換します。
vbKatakana16文字列内のひらがなをカタカナに変換します。
vbHiragana32文字列内のカタカナをひらがなに変換します。
vbUnicode64システムの既定のコード ページを使って文字列をUnicode に変換します。
vbFromUnicode128文字列を Unicode からシステムの既定のコード ページに変換します。
【 例 】result = StrConv( "abcあいうえお", vbUpperCase + vbKatakana ) → "ABCアイウエオ"


● Trim、LTrim、RTrim 関数
【機能】
【書式】
先頭と末尾のスペースを削除した文字列を返します。
result = Trim ( 文字列 )
【機能】
【書式】
先頭のスペースを削除した文字列を返します。
result = LTrim ( 文字列 )
【機能】
【書式】
末尾のスペースを削除した文字列を返します。
result = RTrim ( 文字列 )
【 例 】result = Trim( "□□あいうえお□□" ) → "あいうえお" ※□はスペース
result = LTrim( "□□あいうえお□□" ) → "あいうえお□□" ※□はスペース
result = RTrim( "□□あいうえお□□" ) → "□□あいうえお" ※□はスペース

  ※ 半角、全角かかわらず、スペースを削除します。


● UCase、LCase 関数
【機能】
【書式】
小文字のアルファベットを大文字へ変換した文字列を返します。
result = UCase ( 文字列 )
【機能】
【書式】
大文字のアルファベットを小文字へ変換した文字列を返します。
result = LCase ( 文字列 )
【 例 】result = UCase( "ABCdefABCdef123" ) → "ABCDEFABCDEF123"
result = LCase( "ABCdefABCdef123" ) → "abcdefabcdef123"

  ※ 半角、全角かかわらず、アルファベットを大文字/小文字へ変換します。