VBレスキュー(花ちゃん)
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ各掲示板

メニューへ戻ります。 文字列操作関係のメニュー
1.文字列を半角→←全角等異種文字列に変換する
2.文字列の文字数・バイト数を取得する
3.文字列中から指定位置の文字を取り出す
4.指定の文字数になるまで、先頭又は、末尾に指定文字を埋める
5.文字列の半角換算のバイト数の取得及び文字列を指定のバイト数にカット
6.指定バイト位置から指定バイト数分の文字列を取り出す関数
7.半角カタカナだけを全角カタカナに変換する
8.文字列中から指定の文字を検索する方法色々
9.
10.
11.
12.
 .
20.その他、当サイト内に掲載の文字列操作に関するサンプル


7.半角カタカナだけを全角カタカナに変換する(39_Str_07) (旧、SampleNo.017)
1.半角カタカナだけを全角カタカナに変換する自作関数
2.上記と同じ事を正規表現を使って実現する方法
3.
4.
5.
6.

 下記プログラムコードに関する補足・注意事項 
動作確認:Windows 8.1 (Windows 7) / VB2013 (VB2010) / Framework 4.5.1 / 対象の CPU:x86
Option :[Compare Text] [Explicit On] [Infer On] [Strict On]
Imports :追加なし
参照設定:
追加なし
その他 :
    :
このサンプル等の内容を無断で転載、掲載、配布する事はお断りします。(私の修正・改訂・削除等が及ばなくなるので)
必要ならリンクをはるようにして下さい。(引用の場合は引用元のリンクを明記して下さい)
このページのトップへ移動します。 1.半角カタカナだけを全角カタカナに変換する自作関数

Option Compare Binary

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    Label1.Text = fKanaHan2Zen(TextBox1.Text)
End Sub

'=================================================
'半角カナだけを全角カナ変換する関数 fKanaHan2Zen
'=================================================
' result = fKanaHan2Zen(myString)
' 引数 myString :変換元の文字列
' 戻値 result  :変換後の文字列      
'-------------------------------------------------
Private Function fKanaHan2Zen(ByVal myString As String) As String
    Dim i As Integer, strTemp As String = "", chrKana As String, strKana As String = ""
    If myString Like "*[。-゚]*" Then     'Option Compare Binary でないと、"引数 'Pattern' は有効な値ではありません。" となる。
        For i = 0 To myString.Length - 1
            chrKana = myString.Chars(i)
            Select Case Asc(chrKana)
            Case 161 To 223
                strKana &= chrKana  '半角が続いたら文字をつなぐ
            Case Else  '全角文字になったら半角の文字を全角に変換
            If strKana.Length > 0 Then
                strTemp &= StrConv(strKana, VbStrConv.Wide)
                strKana = ""
            End If
            strTemp &= chrKana
            End Select
        Next i
        If strKana.Length > 0 Then  '最後の文字が半角の場合の処理
            strTemp &= StrConv(strKana, VbStrConv.Wide)
        End If
    Else
        Return myString
    End If
    Return strTemp
End Function

このページのトップへ移動します。 2.上記と同じ事を正規表現を使って実現する方法

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
    Label1.Text = System.Text.RegularExpressions.Regex.Replace(TextBox1.Text, "[\uFF61-\uFF9F]+", _
                                    New System.Text.RegularExpressions.MatchEvaluator(AddressOf ReplaceCC))
End Sub

Private Function ReplaceCC(ByVal m As System.Text.RegularExpressions.Match) As String
    Dim s As String = m.ToString
    s = StrConv(s, VbStrConv.Wide)
    Return s
End Function

このページのトップへ移動します。 3.


このページのトップへ移動します。 4.


このページのトップへ移動します。 5.


このページのトップへ移動します。 6.


このページのトップへ移動します。 検索キーワード及びサンプルコードの別名(機能名)





このページのトップへ移動します。