「検索ヒット数表示」の版間の差分

提供: MeryWiki
ナビゲーションに移動 検索に移動
MSY-07 (トーク | 投稿記録)
改行の修正
MSY-07 (トーク | 投稿記録)
句点の修正、機種依存文字の修正、制御文字(U+200E)の除去
5行目: 5行目:


== ファイル ==
== ファイル ==
[[ファイル:HitCount.zip‎]](マクロおよびプラグイン)
[[ファイル:HitCount.zip]](マクロおよびプラグイン)


[[ファイル:src_HitCount.zip‎]](プラグインのソース、VisualStudio 2015 Community にて作成)
[[ファイル:src_HitCount.zip]](プラグインのソース、VisualStudio 2015 Community にて作成)


== 使用上の注意 ==
== 使用上の注意 ==
マクロライブラリにある [[includeライブラリ]] を利用しています.
マクロライブラリにある [[includeライブラリ]] を利用しています。


このマクロの前にそちらを導入してください.
このマクロの前にそちらを導入してください。


プラグインの利用には、
プラグインの利用には、
32行目: 32行目:
|正規表現
|正規表現
|-
|-
!①マクロ(Selection.FindRepeat)
!(1)マクロ(Selection.FindRepeat)
|16,966
|16,966
|539,398
|539,398
|-
|-
!②マクロ(Selection.Replace)
!(2)マクロ(Selection.Replace)
|78
|78
|16,164
|16,164
|-
|-
!③マクロ(JScript Only)
!(3)マクロ(JScript Only)
|0(※)
|0(※)
|47
|47
|-
|-
!④プラグイン(提供されている API 使用)
!(4)プラグイン(提供されている API 使用)
|706
|706
|27,966
|27,966
|-
|-
!⑤プラグイン(.NET の API 使用)
!(5)プラグイン(.NET の API 使用)
|26
|26
|178
|178
|-
|-
!⑥プラグイン(鬼雲の DLL を直接使用)
!(6)プラグイン(鬼雲の DLL を直接使用)
|(⑤と同じ)
|((5)と同じ)
|122
|122
|}
|}
※マクロの場合、時間計測の分解能が 16ms ですので、実際には 16ms 未満を意味します。
※マクロの場合、時間計測の分解能が 16ms ですので、実際には 16ms 未満を意味します。

2023年5月17日 (水) 18:25時点における版

概要

検索でヒットした数をカウント、表示します。

マクロ版、プラグイン版を比較用に 3 パターンずつ用意しています。

ファイル

ファイル:HitCount.zip(マクロおよびプラグイン)

ファイル:src HitCount.zip(プラグインのソース、VisualStudio 2015 Community にて作成)

使用上の注意

マクロライブラリにある includeライブラリ を利用しています。

このマクロの前にそちらを導入してください。

プラグインの利用には、

  • .NET Framework 4.5 以降
  • Visual C++ Redistributable for Visual Studio 2015 (x86)

がインストールされている必要があります。

実行時間参考

いくつかのパターンがあり、かなり実行時間に差があります。 (実装の効率・非効率の差も当然ありますので、参考までに)

「吾輩は猫である」(青空文庫)に対し、

  • 「通常検索」では「は」を検索(ヒット件数:7379)
  • 「正規表現検索」では「[あ-ん]」を検索(ヒット件数:223937)

したときの実行時間(単位は ms)

パターン 通常検索 正規表現
(1)マクロ(Selection.FindRepeat) 16,966 539,398
(2)マクロ(Selection.Replace) 78 16,164
(3)マクロ(JScript Only) 0(※) 47
(4)プラグイン(提供されている API 使用) 706 27,966
(5)プラグイン(.NET の API 使用) 26 178
(6)プラグイン(鬼雲の DLL を直接使用) ((5)と同じ) 122

※マクロの場合、時間計測の分解能が 16ms ですので、実際には 16ms 未満を意味します。

スポンサーリンク