数字データだけにしたいのですが。No.03871
haru さん 03/09/23 10:26
 
---元データ(ここから)---
円: 1
   3.870  -OK
円: 2
   333.963  
距離:
円: 3
 -24.032    --OK
円: 4
  24.078  ++++OK
距離: 3.4
---元データ(ここまで)---

 上記データから、3.870,333.963,-24.032,24.078だけを抜き出して、

---理想の置換後のデータ(ここから)---
3.870
333.963
24.032
-24.078
---理想の置換後のデータ(ここまで)---

 にしたいのですが、よろしくお願いします。

replaceallfast ".*\\f[-0-9]{1,3}\\.[0-9]{3}\\f.*", "\\1", regular:

 を実行したら、

---上記マクロの実行後のデータ(ここから)---
円: 1
3.870
円: 2
3.963
距離:
円: 3
4.032
円: 4
4.078
距離: 3.4
---上記マクロの実行後のデータ(ここまで)---

 になってしまいました。
 できれば、GREPは使いたくないので、マクロで上の条件に一致し
ない行を削除する方法を教えていただきたいのですが。
 よろしくお願いします。
 ver4.00b16です。

[ ]
RE:03871 数字データだけにしたいのですがNo.03872
山紫水明 さん 03/09/23 12:02
 
 haruさん,こんにちは。

》replaceallfast ".*\\f[-0-9]{1,3}\\.[0-9]{3}\\f.*", "\\1", regular:
》・・・
》 を実行したら、
》 になってしまいました。

 2段階に分けてやったらどうでしょう。

//--------------------------------------------------------//
replaceall "^[^-0-9 ].+\\n", "", regular;
replaceall "^ +\\f[-0-9.]+\\f .*", "\\1", regular;
endmacro;
//--------------------------------------------------------//

     では, (^^)/~
                                        山紫水明

[ ]
RE:03872 数字データだけにしたいのですがNo.03873
haru さん 03/09/23 16:52
 
山紫水明さん,こんにちは。

> 2段階に分けてやったらどうでしょう。

>//--------------------------------------------------------//
>replaceall "^[^-0-9 ].+\\n", "", regular;
>replaceall "^ +\\f[-0-9.]+\\f .*", "\\1", regular;
>endmacro;
>//--------------------------------------------------------//

 ありがとうございます。
 うまくいきました。

[ ]