tagCANDY CGI VBレスキュー(花ちゃん) - VBレスキュー(花ちゃん)の投稿サンプル用掲示板 - Visual Basic 6.0 VB2005 VB2010
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ
VBレスキュー(花ちゃん)の投稿サンプル用掲示板
     サンプル投稿用掲示板  VB2005 〜 用トップページ  VB6.0 用 トップページ
英数字以外の削除の仕方(高速処理法)(VB6.0) ( No.0 )  [親スレッドへ]
日時: 2010/01/07 14:00
名前: 花ちゃん

***********************************************************************************
* カテゴリー:[文字列処理][アルゴリズム][基本コード]                           *
* キーワード:高速化,検索,文字列の連結,置換え,配列処理,                           *
***********************************************************************************

元質問:英数字以外の削除の仕方 - YADORI  2004/05/31-22:59 No.9104

strOneLineDatに英数字、漢字、記号などが入り乱れて入力されます。
 そのデータを英数字のみの状態のデータとしたい時に私は下記の様に記述したのですが
 データが多くなると処理速度がかなり低下します。

 Dim strOneLineDat As String
  Dim strTemp       As String
  Dim intLoop       As Integer
  Dim intAsc        As Integer
  '
  strOneLineDat = "aAcd-0324-PあOI*POいL\AA"
  '
  strTemp = ""
  For intLoop = 1 To Len(strOneLineDat)
      intAsc = Asc(Mid$(strOneLineDat, intLoop, 1))
      If (intAsc >= 97 And intAsc <= 122) _
         Or (intAsc >= 65 And intAsc <= 90) _
         Or (intAsc >= 48 And intAsc <= 57) Then
         strTemp = strTemp + Mid$(strOneLineDat, intLoop, 1)
      End If
  Next
  strOneLineDat = strTemp

  MsgBox strOneLineDat  '結果------------> aAcd0324POIPOLAA
  
  速度を上げるためにもっと簡略した方法など有ればご教授頂きたくお願い致します。




 [スレッド一覧へ] [親スレッドへ]