タグ付き正規表現で、置換したいNo.14896
yamasan さん 03/06/23 12:17
 
こんにちは。yamasanと申します。
Microsoftのoffice製品との絡みもあるんですが、どうぞお願いします。

EXCELLのワークシートから、秀丸にコピーして、
置換後に、EXCELLの別シートへ貼り付けたいというのが、希望です。

それで、検索するのは、タブ区切りの文字列で、

ふりがな[タブ]会員氏名[タブ]施術所名[タブ]郵便番号[タブ]住所[タブ]電話番号
[タブ]FAX[タブ]左欄3[タブ]右欄3[タブ]右欄4

と言うものです。それを置換して、以下のようになって欲しいのです。

会員氏名[タブ]施術所名[タブ][タブ]〒郵便番号[タブ]
ふりがな[タブ][タブ]TEL 電話番号[タブ][タブ]住所
[タブ][タブ]FAX[タブ][タブ]右欄3
[タブ][タブ]左欄3[タブ][タブ]右欄4
[タブ][タブ][タブ][タブ]

私の置換方法は、
検索
^.[^\t]*\f\t\f.[^\t]*\f\t.[^\t]*\f\t\f.[^\t]*\f\t.[^\t]*\f\t\f.[^\t]*\f\t.[^
\t]*\f\t.[^\t]*\f\t.[^\t]*\f\t.+$

置換(見難いので改行を入れました。)
\2\3\t\t〒\5\t\n
\0\t\tTEL \8\t\6\n
\t\9\t\11\n
\t\10\t\12\n
\t\t\t\t\n

その結果は、下のようになります。

会員氏名[タブ]施術所名[タブ][タブ]〒郵便番号[タブ]
ふりがな[タブ][タブ]TEL 電話番号[タブ][タブ]住所
[タブ][タブ]FAX[タブ][タブ]1
[タブ][タブ]0[タブ][タブ]2
[タブ][タブ][タブ][タブ]

タグ付き正規表現は、"\9"までしか使えないのでしょうか?
と言う質問も含めて、解決したいのですが、お教えください。
EXCELLのマクロを使ったら問題ないと思うのですが、
出来たら、秀丸で解決したいと思います。

[ ]
RE:14896 タグ付き正規表現で、置換したいNo.14897
たけのこ さん 03/06/23 13:06
 
たけのこです。

元がExcelなんだったら、Excel上で並べ替えだけしてしまうのが一番スマートで
手っ取り早い方法かと思いますが。

まあ、タグ付き正規表現の上限値を増やすことに関しては別に異論はないですが
(今のままでも十分ですけど)。


で、どうしても秀丸でやりたくて、且つ正規表現を使うならもう少し情報を正規
化しましょう。例えば、会員氏名と施術所名って分ける必要がありますか? こ
れだけで利用タグが1つ減りますね?

(^^)/”

[ ]
RE:14897 タグ付き正規表現で、置換したいNo.14898
yamasan さん 03/06/23 13:14
 
たけのこさん、ありがとうございます。

>元がExcelなんだったら、Excel上で並べ替えだけしてしまうのが一番スマートで
>手っ取り早い方法かと思いますが。

これが、データが150ぐらい有るので、
この入力済みのものを利用するには、
手作業では、大変でして、これを定量化して、
ループ処理とかで、マクロを作れば良いと思っています。
しかし、そこまで、頭が回らないので・・・。


>化しましょう。例えば、会員氏名と施術所名って分ける必要がありますか? こ
>れだけで利用タグが1つ減りますね?

そうですね。EXCELLの列を並べ替えたり、
間に空白列を入れたりしたら、秀丸で解決できそうです。
思慮が足りませんでした。ごめんなさい。m(_ _)m
もう少し、やってみて、駄目だったら、
EXCELLで処理するように、考えを変えます。

どうも、ありがとうございました。

[ ]
RE:14897 タグ付き正規表現で、置換したいNo.14899
ENCODINGSHIFTJIS さん 03/06/23 13:15
 
http://www.moug.net
あたりに行くのが正解です。
Sheet2のA列に計算式 =Sheet1!B:B
を入れると会員氏名がA列に来ます、以下同様。



[ ]
RE:14899 タグ付き正規表現で、置換したいNo.14900
yamasan さん 03/06/23 13:29
 
ENCODINGSHIFTJISさん、ありがとうございます。

>http://www.moug.net
>あたりに行くのが正解です。
>Sheet2のA列に計算式 =Sheet1!B:B
>を入れると会員氏名がA列に来ます、以下同様。

とても、良い情報をありがとうございました。
お陰様で、どうにか、解決できそうです。m(_ _)m

[ ]