行頭が英字でない文字の検索No.02885
haru さん 01/12/23 12:56
 
いつも、お世話様です。haruです。こんにちは。早速なんですが、

例えば
(テキストここから)
12345
abc
10xyz abcあdef
(テキストここまで)

というものがあったとして、上記行頭以外の英字部分(=最初のab
c除く)のみを別の文字に置き換えたいときどうすれば良いですか?

replaceall "[a-z]+","別文字",regular;
replaceall "[^\n][a-z]+","別文字",regular;

では、駄目でした。
replaceallで一気に置換したいのですが、できますか?

とりあえず、今は検索してカーソル位置が行頭なら置換しないというや
り方で対処しています。

よろしくお願いします。

[ ]
RE:02885 行頭が英字でない文字の検索No.02886
Arimac さん 01/12/23 17:23
 
行頭以外ということは前に何か文字(英字以外)があることを
条件にすれば良いと思います。

replaceall "[^a-z]\f[a-z]+","\0別文字",regular;

でできるんではないでしょうか?

[ ]
RE:02885 行頭が英字でない文字の検索No.02887
ひろ さん 01/12/23 19:16
 
 別の文字列 さん今日は、ひろです。
> 上記行頭以外の英字部分(=最初のab
> c除く)のみを別の文字に置き換えたい
#reg_search = searchmode;
$search = searchbuffer;
#search = searchoption;
openreg "CURRENTUSER", "Software\\Hidemaruo\\Hidemaru\\Env";
writeregnum "SelectFound",1;
envchanged;
closereg;
gofiletop;
setsearch "[A-Za-z]+",16;
finddown2;
while(result){
  if( column )insert "別の文字列";
  else moveto selendx,selendy;
  finddown;
}
openreg "CURRENTUSER", "Software\\Hidemaruo\\Hidemaru\\Env";
writeregnum "SelectFound",#reg_search;
envchanged;
closereg;
setsearch $search, #search;
endmacro;

[ ]
RE:02886 行頭が英字でない文字の検索No.02888
TAKA さん 01/12/23 20:04
 
TAKA です。

>replaceall "[^a-z]\f[a-z]+","\0別文字",regular;
>
>でできるんではないでしょうか?

replaceall "[^a-z]\\f[a-z]+","\\0別文字",regular;
のように「\」をダブらす必要があります。

[ ]
RE:02886 行頭が英字でない文字の検索No.02889
haru さん 01/12/23 23:16
 
Arimacさん、こんばんは。haruです。

>replaceall "[^a-z]\f[a-z]+","\0別文字",regular;
>でできるんではないでしょうか?

早速の御返事、ありがとうございます。うまくいきました。

[ ]
RE:02888 行頭が英字でない文字の検索No.02890
haru さん 01/12/23 23:42
 
TAKAさん、こんばんは。haruです。

>replaceall "[^a-z]\\f[a-z]+","\\0別文字",regular;
>のように「\」をダブらす必要があります。

わかりました。早速の御返事、ありがとうございます。

[ ]
RE:02887 行頭が英字でない文字の検索No.02891
haru さん 01/12/23 23:48
 
ひろさん、こんばんは。haruです。

>gofiletop;
>setsearch "[A-Za-z]+",16;
>finddown2;
>while(result){
>  if( column )insert "別の文字列";
>  else moveto selendx,selendy;
>  finddown;
>}

わかりました。columnで判定した方がより正確なんですね。
ありがとうございます。

[ ]