次の正規表現に問題があります。
(.*?)\|\*\|([0-9]+)\*\|\*(.*?)
次のようなものと一致する必要があります。|*25 *|
.Net Framework 4RegExクラスを使用しています。コードは次のとおりです。
string expression = "(.*?)" +
Regex.Escape(Constants.FIELD_START_DELIMITER_BACK_END) +
"([0-9]+)" +
Regex.Escape(Constants.FIELD_END_DELIMITER_BACK_END) +
"(.*?)";
Regex r = new Regex(expression);
r.Matches(contentText)
40.000文字のテキストでは時間がかかりすぎます(60秒など)。
しかし、180.000のテキストでは、その速度は非常に許容範囲内です(3秒以下)
テキスト間の唯一の違いは、最初のテキスト(遅いテキスト)がすべて1行に含まれ、改行がないことです。これは問題になる可能性がありますか?それはパフォーマンスに影響を与えていますか?
ありがとう