大文字、小文字の区別をFunctionに追加するには?

解決


VB.NET勉強  2005-08-16 20:08:17  No: 91500

txt2のなかにtxt1に入力した文字がいくつあるか調べるFunctionです。
これに大文字、小文字の区別をしないでも検索する機能を追加したいのですが、どうしたら良いのでしょう?下記のコードは、大文字、小文字の区別をして値を返します。

Public Function WordCount (txt1 as string, txt2 as string) as long
 Dim i As Integer = 0
  Dim j As Integer = 0
  Dim k As Integer = txt1.Length
    Do
         i = txt2.IndexOf(txt1, i)
         If i >= 0 Then
              i = i + k
              j = j + 1
          End If
    Loop Until i < 0
  Return j


いな  2005-08-16 21:05:06  No: 91501

http://jeanne.wankuma.com/tips/string/07-lowerupper.html
どちらかに変換してしまえば、区別はないよね?

PS
  件名と、内容は一致させてください。

  件名:大文字と小文字を区別したい
  内容:大文字と小文字を区別したくない。

これでは、逆です。


VB.NET勉強  2005-08-16 21:40:05  No: 91502

有難うございました。


じゃんぬねっと  URL  2005-08-17 00:06:02  No: 91503

>いなさん
こちらを貼って頂きたかったです。(´;ω;`)
http://jeanne.wankuma.com/tips/string/06-compareignore.html


ねろ  2005-08-17 00:37:04  No: 91504

>じゃんぬねっとさん
要するにいなさんの言ってるのは、
i = txt2.IndexOf(txt1, i)  -> i = txt2.ToLower.IndexOf(txt1.ToLower, i)
又は
i = txt2.IndexOf(txt1, i)  -> i = txt2.ToUpper.IndexOf(txt1.ToUpper, i)
ということでは。
String.Compare メソッドでの処理は上のコードに比べると、少々面倒コードになるような
気もするのですが。(単に私の力不足か?)

>VB.NET勉強さん 
i = i + k    ->   i += k
j = j + 1    ->   j += 1
自分で書いておいて申し訳ないが、上の書き方に慣れた方が良いかも。orz


いな  2005-08-17 02:31:06  No: 91505

>こちらを貼って頂きたかったです。(´;ω;`)

じゃんぬねっと さん、ごめんなさい。
前のスレッドで大文字、小文字のほにゃらら・・・。って合ったので
ぐぐってラッキーのアドレス(=I'm Feeling Lucky)を張ってしまいました。

ん〜、反省


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加