ダブルクオーテーション・カンマ付数値のNo.27954
umi_1 さん 10/04/07 13:43
 
置換>正規表現 機能にてダブルクオーテーション・カンマ付数値のカンマを除去す
る方法はあるでしょうか?

例:"2,060.50" → "2060.50"
例:"1,257.10" → "1257.10"

検索:"(([0-9]*),)?(([0-9]*),)?(([0-9]*),)?(([0-9]*),)?([.0-9]+)"$
置換:"\2\4\6\8\9"

でやったのですがうまくいきませんでした。

その他には以下のようなデータがあります。

"100,000.00"、"80,467.80"、"1,231.60"、"10,533.60"
"1,768.70"、"2,534.00"、"3,028.40"、"1,163.10"

よろしくお願い致します。

[ ]
RE:27954 ダブルクオーテーション・カンマNo.27957
h-tom さん 10/04/07 15:10
 

h-tom です。

>置換>正規表現 機能にてダブルクオーテーション・カンマ付数値のカンマを除去す
>る方法はあるでしょうか?
>
>例:"2,060.50" → "2060.50"
>例:"1,257.10" → "1257.10"
>検索:"(([0-9]*),)?(([0-9]*),)?(([0-9]*),)?(([0-9]*),)?([.0-9]+)"$
>置換:"\2\4\6\8\9"
この正規表現では、括弧の認識方法が異なるので、秀丸エディタ標準のHMJRE.DLL
では無理です。
互換DLLが必要です。
・BregIf.dll + (BREGEXP.DLL または、bregonig.dll)
・hmonig.dll

HMJRE.DLLの場合、小数点以下が必ずあり、カンマが1つなら、以下の置換で、
どうでしょう。
検索:"([0-9]+),([0-9.]+)"
置換:"\1\2"

カンマが複数ある場合は、一回の置換では無理なので、以下の内容を複数回実行
すれば良さそうです。
(最後にある、数字+","を、数字のみにする。)
検索:"(.+,)*([0-9]+),([0-9.]+)"
置換:"\1\2\3"

[ ]
RE:27957 ダブルクオーテーション・カンマNo.27958
h-tom さん 10/04/07 16:01
 

h-tom です。

訂正です。キャプチャしない括弧が使えるのを、忘れてました。
(秀丸エディタのVer.8.00が必要です。)

検索:"(?:([0-9]*),)?(?:([0-9]*),)?(?:([0-9]*),)?(?:([0-9]*),)?([.0-9]+)"
置換:"\1\2\3\4\5"

>>例:"2,060.50" → "2060.50"
>>例:"1,257.10" → "1257.10"
>>検索:"(([0-9]*),)?(([0-9]*),)?(([0-9]*),)?(([0-9]*),)?([.0-9]+)"$
>>置換:"\2\4\6\8\9"

[ ]
RE:27958 ダブルクオーテーション・カンマNo.27959
秀まるお2 さん 10/04/07 17:25
 
 検索のオプションで「追加の条件」をONにして、「文字定数のみ」とする作戦
もありかなぁと思います。

[ ]
RE:27958 ダブルクオーテーション・カンマNo.27960
umi_1 さん 10/04/07 17:27
 
基本的なことですみません。
「キャプチャしない括弧」とは何でしょうか?

[ ]
RE:27960 ダブルクオーテーション・カンマNo.27961
umi_1 さん 10/04/07 17:29
 
レスの場所間違えました(すみません)

[ ]
RE:27960 ダブルクオーテーション・カンマNo.27962
h-tom さん 10/04/07 18:39
 

h-tom です。

>基本的なことですみません。
>「キャプチャしない括弧」とは何でしょうか?
後方参照(\1、\2・・・)の対象にならない括弧の事です。

[ ]
RE:27959 ダブルクオーテーション・カンマNo.27974
umi_1 さん 10/04/08 13:21
 
> 検索のオプションで「追加の条件」をONにして、「文字定数のみ」とする作戦
>もありかなぁと思います。

有難うございます!

[ ]
RE:27962 ダブルクオーテーション・カンマNo.27975
umi_1 さん 10/04/08 13:24
 
>>「キャプチャしない括弧」とは何でしょうか?
>後方参照(\1、\2・・・)の対象にならない括弧の事です。

実行して成功しました!有難うございます!

「キャプチャしない括弧」というのは「?:」で使用しているのでしょうか?
この辺のことが書かれたマニュアル等はどこかにあるでしょうか?

[ ]
RE:27975 ダブルクオーテーション・カンマNo.27978
秀丸担当 さん 10/04/08 14:11
 

h-tomさんの書かれた方法でできているということで、h-tomさんありがとうござ
います。

>「キャプチャしない括弧」というのは「?:」で使用しているのでしょうか?
>この辺のことが書かれたマニュアル等はどこかにあるでしょうか?

正規表現については、秀丸エディタヘルプの

 目次− 検索系コマンド−正規表現

のところに書かれていますが、「?:」については、HmJre.dllのヘルプに詳細が
書いてあります。
HmJre.dllのヘルプは、検索ダイアログを出しているときに「ヘルプ」ボタンを
押して出てくるページの「正規表現」のところの、

 参照: 正規表現 HmJre.dllのヘルプ

と書かれているところから開くことができます。
HmJre.dllのヘルプの「HmJre.dllにおける正規表現」のページの一番下あたりに
「(?:...)」のことが詳しく書かれています。

[ ]
RE:27978 ダブルクオーテーション・カンマNo.27985
umi_1 さん 10/04/09 09:56
 
>正規表現については、秀丸エディタヘルプの

>「(?:...)」のことが詳しく書かれています。

ふ、深い… 御丁寧に有難うございました!

[ ]