文字列の切り出しNo.05584
higunet さん 07/07/09 11:25
 
こんにちは、以下のような作業をマクロを組んで作業したいのですが、
どのように組んだら宜しいのでしょうか?

例)C:\samples\200702\MM20070202080000\M000012071.bin,1 the b21/aaa.b aaaa !!!

から、

M000012071.bin ,1

を新規秀丸エディタに切り出しをしたい。

又、同じ名前の.binを削除したい。

grepを使用すれば出来ると思いましたが、ヒットしませんでした。

<grepの実施>
 
 *.bin,1

どなたか、お分かりになる方ご教授お願い致します。

[ ]
RE:05584 文字列の切り出しNo.05585
ENCODINGSHIFTJIS さん 07/07/09 14:28
 
検索条件の書き方は ソフトにより様々です(短い答え)
秀丸はワイルドカードの形式を使いません。
正規表現形式を使います、ヘルプに説明があります。(少し、長い答え)

ステップ1、ヒットさせるパターンを見つける(正規表現でのエスケープ文字の知識
が必須)

検索 正規表現on の検索文字
\\[0-9A-M]+\.bin,1

実際に検索してヒットした箇所を確認します。

ステップ2 切り出し(行全体をマッチさせて、部分を残すという発想)

.+?(\\[0-9A-M]+\.bin,1).+
↓ 置換
\1

方法はいろいろ

[ ]
RE:05585 文字列の切り出しNo.05586
higunet さん 07/07/09 17:22
 
返答、有難う御座いました。

正規表現でのエスケープ文字の知識がないと
やはり厳しいですね。



>検索条件の書き方は ソフトにより様々です(短い答え)
>秀丸はワイルドカードの形式を使いません。
>正規表現形式を使います、ヘルプに説明があります。(少し、長い答え)
>
>ステップ1、ヒットさせるパターンを見つける(正規表現でのエスケープ文字の知識
>が必須)
>
>検索 正規表現on の検索文字
>\\[0-9A-M]+\.bin,1
>
>実際に検索してヒットした箇所を確認します。
>
>ステップ2 切り出し(行全体をマッチさせて、部分を残すという発想)
>
>.+?(\\[0-9A-M]+\.bin,1).+
>↓ 置換
>\1
>
>方法はいろいろ

[ ]
RE:05586 文字列の切り出しNo.05592
小電流 さん 07/07/10 08:15
 
>正規表現でのエスケープ文字の知識がないと
>やはり厳しいですね。

ヘルプに書いてあります。

[ ]
RE:05584 文字列の切り出しNo.05593
山紫水明 さん 07/07/10 20:14
 
 higunetさん,

まだご覧になっているかな。
ENCODINGSFIFT さんが書いておられるとおりですが,マクロにすれば次のよう
にすればできるでしょう。

//------------------------------------------------------------//
localgrep "\\\\[0-9A-M]+\\.bin,1", regular;
replaceallfast "^.+\\\\([0-9A-M]+\\.bin,1).+", "\\1", regular;
endmacro;
//------------------------------------------------------------//

>又、同じ名前の.binを削除したい。
ライブラリにある拙作の「重複行を削除する簡易マクロ」でできるかもしれ
ません。

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

[ ]