次のコマンドを使用するだけで、一致した文字列の行 (find コマンドの結果) を出力する方法を知っていますeditor:MarkerNext()
。
function print_marked_lines()
local ml = 0
local lines = {}
while true do
ml = editor:MarkerNext(ml, 2)
if (ml == -1) then break end
table.insert(lines, (editor:GetLine(ml)))
ml = ml + 1
end
local text = table.concat(lines)
print(text)
end
私が知らないのは、一致した文字列のみを出力する方法です(投稿されたスニペットのように行全体ではありません)。一致した文字列が強調表示され、それらを抽出できるプロパティが必要であるため、解決策があると思いますが、提供された SciTE バインディングで参照が見つからなかったため、Scintilla の知識が必要だと思います。
すべての正規表現パターン「I \w+」を検索/照合するためのスクリーンショットの例:
強調表示されたすべての文字列部分を出力 (出力ペインに出力) したい