正規表現スタイルで全半角の区別

[5617]正規表現スタイルで全半角の区別 | 投稿者:グンマ | 投稿日:2011/02/26(Sat) 13:12:35
教えてください。
正規表現スタイル内では数字の全角・半角の区別はできないのでしょうか?
[0-9]
[0-9]
どちらも数字全部が対象になってしまいます。
» 1
[5619]Re: 正規表現スタイルで全半角の区別 | 投稿者:sekita | 投稿日:2011/02/26(Sat) 15:55:17
コード指定(Unicode16進表記)なら区別できるようです。以下の通りです。
半角数字
[{0030}-{0039}]
全角数字
[{FF10}-{FF19}]
» 2
[5620]Re: 正規表現スタイルで全半角の区別 | 投稿者:グンマ | 投稿日:2011/02/26(Sat) 18:01:45
ありがとうございます、できました。
大助かりです。
» 3
[5625]Re: 正規表現スタイルで全半角の区別 | 投稿者:rosan | 投稿日:2011/02/28(Mon) 12:25:13
解決されたようですが、宜しければお二方教えてください。

私はWindows版CS4 6.0.6ですが、[0-9]で半角数字のみが
指定できています。
グンマさん、sekitaさんがお使いのバージョンは何でしょうか?
» 4
[5628]Re: 正規表現スタイルで全半角の区別 | 投稿者:いき | 投稿日:2011/02/28(Mon) 16:27:37
> rosanさん
sekitaさんが仰る通り、16進表記を利用するのがよさそうです。
というのは、グンマさんの元発言にあるように正規表現スタイルを利用している以上、CS4以降のバージョンであることは間違いなく、Windows版CS5で試したところ、[0-9] も [0-9] も半角数字のみに適用されます。
さらに、  だと全角数字・半角数字両方に適用されてしまいます。
これは、検索置換ダイアログの「半角・全角を区別する」オプションのオン・オフにかかわらず起きる現象のようです。
» 5
[5629]Re: 正規表現スタイルで全半角の区別 | 投稿者:sekita | 投稿日:2011/02/28(Mon) 17:03:23
私はMac版のCS4ですが、いきさんの仰る通りです。
検索置換でも正規表現スタイルでも、どうも半角数字と全角数字を同一に扱い、それを区別するのは、「半角・全角を区別する」オプションに一任しているように思われます。これはユーザーの入力ミスを想定してのことかもしれません。
ところが正規表現スタイルにはそのオプションが用意されていないという状況のように思われます。
» 6
[5630]Re: 正規表現スタイルで全半角の区別 | 投稿者:rosan | 投稿日:2011/02/28(Mon) 19:29:43
いきさん、sekitaさんありがとうございます。

お二人の回答を拝見し、こちらで[0-9]という指定を行ってみたところ、
[0-9]と全く一緒の結果となりました。
理由についてもお二人の書き込みから理解できました。
お陰様で誤った知識を正すことができました。ありがとうございました。

>スレ主様
横から失礼いたしました。
この記事の書き込み元へのリンク (コメントや質問などはこちらへどうぞ)

このページをシェア