「文書から検索」の版間の差分
ナビゲーションに移動
検索に移動
Haijinboys (トーク | 投稿記録) コピーライトを削除 |
スペースからタブに変更、空白の除去 |
||
| 4行目: | 4行目: | ||
var s = prompt("検索", ""); | var s = prompt("検索", ""); | ||
if (s == "") { | if (s == "") { | ||
Quit(); | |||
} | } | ||
| 11行目: | 11行目: | ||
var r = new RegExp(s, "i"); | var r = new RegExp(s, "i"); | ||
for (var e = new Enumerator(editor.documents); !e.atEnd(); e.moveNext()) { | for (var e = new Enumerator(editor.documents); !e.atEnd(); e.moveNext()) { | ||
var item = e.item(); | |||
if (item != d) { | |||
d.selection.Text = Find(item, r); | |||
} | |||
} | } | ||
with (d.selection) { | with (d.selection) { | ||
StartOfDocument(); | |||
Find(s, meFindNext + meFindReplaceRegExp); | |||
StartOfDocument(); | |||
} | } | ||
function Find(d, r) { | function Find(d, r) { | ||
var s1 = d.Text.split("\n"); | |||
var s2 = new Array(); | |||
var s3 = ""; | |||
for (var i = 0; i < s1.length; i++) { | |||
var s3 = r.exec(s1[i]); | |||
if (s3) { | |||
s2.push((d.FullName != "" ? d.FullName : "無題") + "(" + (i + 1) + "): " + s1[i]); | |||
} | |||
} | |||
s3 = s2.join("\n"); | |||
return s3 != "" ? (s3 + "\n") : ""; | |||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
2024年12月29日 (日) 23:36時点における版
現在開いているすべての文書から文字列を検索します。
var s = prompt("検索", "");
if (s == "") {
Quit();
}
editor.NewFile();
var d = editor.ActiveDocument;
var r = new RegExp(s, "i");
for (var e = new Enumerator(editor.documents); !e.atEnd(); e.moveNext()) {
var item = e.item();
if (item != d) {
d.selection.Text = Find(item, r);
}
}
with (d.selection) {
StartOfDocument();
Find(s, meFindNext + meFindReplaceRegExp);
StartOfDocument();
}
function Find(d, r) {
var s1 = d.Text.split("\n");
var s2 = new Array();
var s3 = "";
for (var i = 0; i < s1.length; i++) {
var s3 = r.exec(s1[i]);
if (s3) {
s2.push((d.FullName != "" ? d.FullName : "無題") + "(" + (i + 1) + "): " + s1[i]);
}
}
s3 = s2.join("\n");
return s3 != "" ? (s3 + "\n") : "";
}
スポンサーリンク