半角文字列の検索No.30731
Jay^2 さん 12/01/10 08:40
 
Jay^2です。お世話になっています。

以前、全角変換、半角変換の対象は、アスキー文字とご教示いただきました。

全文対象で全角変換しても、半角のままの非アスキー文字を検索することは、可能で
しょうか?

検索の目的は、半角の非アスキー文字が文字化けの原因となり、別の全角文字に置き
換えるためです。

[ ]
RE:30731 半角文字列の検索No.30733
秀まるお2 さん 12/01/10 11:41
 
 あいまい検索を使えば出来ると思います。

 例えば半角の「"」も全角の「”」も同様にヒットさせたいとかってことでし
たら、あいまい検索で可能です。

 検索ダイアログボックスの「あいまい検索」をONにして、そこの右の「設
定...」を押して、「全角/半角を区別しない」をONにすればいいです。

 「”」と「“」を同一視とかってことも、設定によっては可能です。
 (同一視指定ファイルを使えば)

[ ]
RE:30733 半角文字列の検索No.30734
Jay^2 さん 12/01/10 13:04
 
> あいまい検索を使えば出来ると思います。
>
 質問があいまいだったようです。特定のキャラクタを指定するのではなく、一つの
ファイルの中に半角の非アスキー文字のいずれかがあるか検索したいのです。

 [0-9]ですべての半角数字を指定するように、すべての半角記号を指定可能か?とい
う質問です。

[ ]
RE:30734 半角文字列の検索No.30736
いいじま さん 12/01/10 13:15
 
秀丸愛用者のいいじまです。

>  質問があいまいだったようです。特定のキャラクタを指定するのではなく、一つの
> ファイルの中に半角の非アスキー文字のいずれかがあるか検索したいのです。
>
> [0-9]ですべての半角数字を指定するように、すべての半角記号を指定可能か?とい
> う質問です。

日本語限定ですが、[\xA0-\xDF] でどうでしょう。
いわゆる半角カタカナ類の文字コードはこの範囲に入ります。

これがUTF-8だと、「たとえばギリシャ文字は半角文字か、全角文字か」
というどうにもならない問題点がありますので、相当難航します。

[ ]
RE:30734 半角文字列の検索No.30737
秀まるお2 さん 12/01/10 13:23
 
>  質問があいまいだったようです。特定のキャラクタを指定するのではなく、一つの
> ファイルの中に半角の非アスキー文字のいずれかがあるか検索したいのです。

 お手数かけてすみません。

 正規表現での[0-9]と同様の方法で、すべての半角記号を表現することは…。
可能です。

 今ちょっと、文字コード表を見て作ってみたパターンとしては、

  [!-/;-@\[-`{-~]

 になりました。これでいけると思います。

 ちなみにですが、この辺の文字指定をするには、Windowsに付属の「文字
コード表」ってソフトを起動して、それで文字コードの順番を確認しながら正規
表現パターンを作っていただくのがいいです。

 文字コード表を起動して、左下にある「詳細表示」をONにして、文字セットの
所を「Windows日本語」にします。

 それで文字コード表を見ていただくと、

   ! " # $ % & ' ( ) * .....

 のように出てきます。例えばここの「!」から「/」までを指定するならば、


  [!-/]

 って正規表現パターンを指定すればいいです。

 それに、例えば「;」〜「@」も追加するなら、

  [!-/;-@]

  となります。そういう感じで正規表現パターンを作る作戦がお勧めです。

 ちなみに「[」の文字そのものを指定するには「\[」と指定しなければいけな
いとか、一部ややこしいルールもあります。

[ ]
RE:30737 半角文字列の検索No.30739
秀まるお2 さん 12/01/10 13:49
 
 いいじまさんの話にあった「半角カナ」も含めるとしたら、

  [!-/;-@\[-`{-~\xA0-\xDF]

 でいけると思います。

[ ]