English help on website



searchdialog文(Ver9.24対応版)
目次検索系文− searchdialog文
searchdialog文は、検索ダイアログを出して検索します。
searchdialog "文字";
searchdialog "abc", word;
パラメータ1(文字列型)
検索文字列を指定します。

パラメータ2以降(予約語 または 数値、省略可能)
検索のオプションを、以下の予約語をカンマ区切りで複数指定できます。
word
casesense または nocasesense
regular または noregular
fuzzy
inselect または inselect2
linknext
hilight または nohilight
incolormarker
masknormal maskcomment maskifdef maskscript maskstring masktag maskonly
loop
noclose
searchoption, searchoption2相当の数値の指定も可能です。

結果コード
成功した場合はresultは1になります。
失敗した場合はresultは0になります。
ダイアログでキャンセルした場合は -2 になります。(V6.50以降)

JavaScript
JavaScriptでは、パラメータ2以降の予約語パラメータは、searchoption, searchoption2キーワード相当の数値のみの指定になります。


予約語パラメータについて
検索の予約語パラメータ
その他
検索文字列には上限があります。上限を超える可能性がある場合は事前に文字数をカウントして判断する必要があります。
参照:検索/置換文字列の上限について

検索にヒットした後、選択されるか点滅表示になるかは動作環境によって違います。
違いを無くすにはsetcompatiblemode文を使います。

searchdown等の文を使うと、検索ダイアログボックスの中の検索条件(大文字/小文字の区別、正規表現のON/OFF等)がマクロ内で実行した検索条件に書き換わってしまいます。
マクロでsearchdown文などを使っても検索ダイアログの検索条件を変わらないようにするには、searchdown等を実行する前に、「setcompatiblemode 0x20000;」を実行する方法があります。

マクロとコマンドの違い
マクロではない通常のコマンド実行による検索ダイアログは、左上の▼ボタンから置換ダイアログに切り替えできたり、検索ダイアログを出したまま編集ができます。
マクロのfind文、searchdialog文など、検索ダイアログを出す文では、置換ダイアログの切り替えや、検索ダイアログを出したまま編集はできません。