私はC#Webクローラーを作成しています。LoadHTMLメソッドがプログラム全体のCPU使用率の10%を使用していることがわかります。これを試して下げたいと思います。私は正規表現がより速くなると確信していますが、私はリンクの例を抜き出して見ていますので、誰もがこのメソッドをHTMLAgilityPackようなhtmlパーサーにするのは避けるべきだと言っています。私がやる必要があるのは、HTMLからHTMLAgilityPackを使ってリンクを抽出することです。私がリンクを抽出するためだけに使っているように、HTMLパーサを私のケースに適用する理由はありますか?WebClientでダウンロードしたHTMLを比較した。href\\s*=\\s*(?:[\"'](?<1>[^\"']*)[\"']|(?<1>\\S+))トリミング、リストへの追加)は、HTMLAgilityPackよりも高速です。一貫して3と比較して43ミリ秒。私がリンクを抽出するためだけに使っているように、HTMLパーサを私のケースに適用する理由はありますか?あなたのケースでは、HTMLパーサーはあなたのテストが示すように過剰です。SOで答えている人は、すべての正規表現の質問に対する動詞として答えを使用します。実際にHTMLのドメインをより堅牢な方法で解析する必要がある場合は、このツールを使用する必要があります。正規表現に対する偏見は、彼らが遅すぎる、または面倒であると感じる人によって発見されます。特定の操作のために提案されたものにはメリットがあります。確かに私は同意するが、正規表現を手放すために、よくStackOverflowのコースのためのパーです。それはなぜですか?提供されたパターンが不必要なバックトラッキングを導入し、最適化されていないため、解析に欠陥があることがあります。それは正規表現をゲートから外します。1つは正規表現の言語を学び、正規表現のエンジンを汚染させないために何をしているのかを理解する必要があります。*検索することで基本的なパターンマッチングを学びます。無差別の使用に伴い、そのステップ*最も可能性の高いバックトラックと遅い応答の地獄に任意の非開始パターンを運命になるだろう。+を使用してください。