[ 掲示板に戻る ]

記事No.9286に関するスレッドです

(No Subject) / kanami Email
はじめまして。

いつも参考に拝見し、学習させていただいてます。

価格数字に小数点がある場合、小数点以下の数字をサイズ変更したいのですが、できますでしょうか?

どうぞご教示ください。

No.9286 2017/07/18(Tue) 19:01:53
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36

Re: / kanami Email
すみません。大事な説明文が抜けてました

CS6の正規表現で行える方法を探しています。

No.9287 2017/07/18(Tue) 19:04:16
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36

Re: / .
普通にできますけど、何に引っかかってるんですか?
小数点(ピリオド)にエスケープ処理が必要、なんてのは、常識でしょうし。

No.9288 2017/07/19(Wed) 09:05:52
Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36

Re: / uske_s URL
kanamiさん、こんにちは。
正規表現スタイルは条件次第でいくらでも変わる可能性がありますので、よくご確認のうえご利用ください。

(?<=[0-9]+\.)[0-9]+
意図する正規表現はおそらくこんな感じです。ご存知かもしれませんが、一応説明します。

(?<=hoge)は、直前にhogeがあるとき、という条件を表しています。これ自体は正規表現の結果としてヒットしません。正規表現スタイルの中では、検索条件のように使うことができます。

[0-9]は半角数字の0から半角数字の9までをUnicode順に並べたときの範囲を示しています。InDesignの文字パネルをUnicode順で表示して、半角数字の0から9の間にどんなものがあるか覗いてみてください。

+は直前のものを1回以上繰り返す、という意味です。

正規表現の中でのピリオド(.)は「何かしらの文字」を表すメタ文字(詳細は省きます^^;)なので、そうではなくて単純にピリオドを探したいという場合には直前にバックスラッシュを置きます。

以上です。ただこれは正規表現として少し未熟です。段落中にピリオドが複数出てきた場合や、先頭が0から始まる数字の場合等は考慮していません。
余計なお世話かもしれませんが、正規表現の肝はどんな正規表現を使うかよりも、どこまで例外を考慮できるかです。そのためにメタ文字(.や\s等)や定義する文字クラス([]を使った文字の指定)が具体的にどの文字(その文字のコード≒Unicodeのコードポイント)を内包するか、調べて試すを繰り返すとよりステップアップできると思います。

No.9289 2017/07/19(Wed) 10:57:53
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36

Re: / uske_s URL
よく試さないですみません。
(?<=[0-9]\.)[0-9]+
こうじゃないとダメですね…。
(?<=hoge)の中には文字数が不確定になるような記述ができないのに、[0-9]+をそのままコピペしてしまっていました…^^;;

No.9290 2017/07/19(Wed) 12:49:16
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.115 Safari/537.36