VBScript str_rot13 関数

文字列に rot13 変換を行う


Function str_rot13(str)

    Dim str_rotated : str_rotated = "
    Dim i,j,k

    For i = 1 to Len(str)
        j = Mid(str, i, 1)
        k = Asc(j)
        if k >= 97 and k =< 109 then
            k = k + 13 ' a ... m
        elseif k >= 110 and k =< 122 then
            k = k - 13 ' n ... z
        elseif k >= 65 and k =< 77 then
            k = k + 13 ' A ... M
        elseif k >= 78 and k =< 90 then
            k = k - 13 ' N ... Z
        end if

        str_rotated = str_rotated & Chr(k)
    Next

    str_rot13 = str_rotated

End Function

引数

str = string 入力文字列。

戻り値

指定した文字列を ROT13 変換した結果を返します。

処理

・ROT13 は、各文字をアルファベット順に 13 文字シフトさせ、 アルファベット以外の文字はそのままとするエンコードを行います。
エンコードとデコードは同じ関数で行われます。
引数にエンコードされた文字列を指定した場合には、元の文字列が返されます。

その他の PHP strings 関数