09080 19/10/03 12:32 RE:09079 文字列調査のマクロについて
投稿者 : IKKI   コメントを投稿する

その要件でしたら、こんな感じのマクロでいかがでしょうか。
(正規表現を工夫すればもうちょっと短く書くこともできますが、学習用として分かりやすいよう、少し冗長な書き方をしています)

// 「/**-**/」が2個以上存在する行を抽出
localgrep "(/[a-z]{2}-[A-Z]{2}/).*(/[a-z]{2}-[A-Z]{2}/)", regular;
// 「/**-**/」が3個以上存在する行を削除
replaceallfast "^.*/[a-z]{2}-[A-Z]{2}/.*/[a-z]{2}-[A-Z]{2}/.*/[a-z]{2}-[A-Z]{2}/.*\\n", "", regular;
// 2個の「/**-**/」が同じである行を削除
replaceallfast "^.*(/[a-z]{2}-[A-Z]{2}/).*\\1.*\\n", "", regular;

▼処理前
xxxx/aa-AA/xxxx
xxxx/ZZ-zz/xxxx
xxxx/aa-AA/xxxx/aa-AA/xxxx
xxxx/aa-AA/xxxx/bb-BB/xxxx
xxxx/aa-AA/xxxx/ZZ-zz/xxxx
xxxx/ZZ-zz/xxxx/aa-AA/xxxx
xxxx/ZZ-zz/xxxx/ZZ-zz/xxxx
xxxx/aa-AA/xxxx/bb-BB/xxxx/bb-BB/xxxx
xxxx/aa-AA/xxxx/aa-AA/xxxx/bb-BB/xxxx
xxxx/aa-AA/xxxx/aa-AA/xxxx/aa-AA/xxxx

▼処理後
(4): xxxx/aa-AA/xxxx/bb-BB/xxxx


新規に投稿する