[ 新規に投稿する ]

置換する単語を指定する方法No.00502
Alter Ego さん 18/04/29 05:42 [ コメントを投稿する ]
   マクロで置換する単語を指定するにはどうすればいいでしょうか?
たとえば、

「和歌と和歌山」を「短歌と和歌浦」に置換したい場合、

replaceallfast "和歌", "短歌", casesense,incolormarker; //
replaceallfast "和歌山", "和歌浦", casesense,incolormarker; //

だと「短歌と短歌山」になってしまいます。
[ ]
RE:00502 Ego 置換する単語を指定する方法No.00503
山紫水明 さん 18/04/29 21:41 [ コメントを投稿する ]
   Alterさん,

> マクロで置換する単語を指定するにはどうすればいいでしょうか?
>たとえば、
>
>「和歌と和歌山」を「短歌と和歌浦」に置換したい場合、

 漢字語の場合には単語検索ができませんので,指定の単語の前後に漢字がないこ
とを正規表現で指定すればできると思います。

replaceallfast "(?<![亜-K])和歌(?![亜-K])", "短歌", regular;
replaceallfast "(?<![亜-K])和歌山(?![亜-K])", "和歌浦", regular;

                    山紫水明
                    SANSHISUIMEI
[ ]
RE:00503 Ego 置換する単語を指定する方法No.00504
Alter Ego さん 18/04/30 09:04 [ コメントを投稿する ]
  ありがとうございます。うまくいきました。

これ、前後が漢字でないと定義してしまうということは、
「和歌と和歌山、古今和歌集、多分和歌山」のように
漢字がつながっているものも含まれている場合は
「短歌と和歌浦、古今短歌集、多分和歌浦」とは
置換できないということですか?
[ ]
RE:00504 Ego置換する単語を指定する方法No.00505
h-tom さん 18/04/30 10:36 [ コメントを投稿する ]
 
h-tom です。

>これ、前後が漢字でないと定義してしまうということは、
>「和歌と和歌山、古今和歌集、多分和歌山」のように
>漢字がつながっているものも含まれている場合は
>「短歌と和歌浦、古今短歌集、多分和歌浦」とは
>置換できないということですか?
条件は、目的に合うように自分で調整すれば、いいのでは?

最初の置換はこんな感じにするとか?
replaceallfast "和歌(?!山)", "短歌",regular;
[ ]
RE:00505 Ego置換する単語を指定する方法No.00506
Alter Ego さん 18/05/05 03:15 [ コメントを投稿する ]
  なんとなくコツがつかめてきました。ありがとうございました。
[ ]

[ 新規に投稿する ]