|
分類:[.NET 全般]
2019/10/01(Tue) 15:29:31 編集(投稿者)
VB2019、Windows10(1903)です。
ひらがな→ローマ字の変換で、「っ」などに対応するために、
Dim s2 As String = "" Dim i As Integer = 0 Do While (i < s1.Length) If (i + (1 < s1.Length)) Then If (s1.Substring(i, 1).CompareTo("っ") = 0) Then s2 = (s2 + HiraganaToAlphabet1(s1.Substring((i + 1), 1)).Substring(0, 1)) End If End If s2 = (s2 + HiraganaToAlphabet1(s1.Substring(i, 1))) i = (i + 1) Loop Return s2
というコードを書きました。しかし、2個以上「っ」が入ってしまうと、
「System.ArgumentOutOfRangeException: 'インデックスおよび長さは文字列内の場所を参照しなければなりません。 パラメーター名:length'」
となってしまいます。2個以上「っ」が入った時に対応させるには、どうすればいいでしょうか。解決方法を教えていただけると幸いです。
追記:エラーがなくなる方向で、仕様はそのまんま
|