Как оптимизировать производительность регулярных выражений?

У меня очень длинное регулярное выражение. Мое регулярное выражение - это комбинация примерно 5000 или более фраз.

Кроме того, текст, для которого я выполняю регулярное выражение, также огромен. Размер текста составляет около 5 КБ.

Поскольку регулярное выражение, как и входной текст, огромны, для выполнения регулярного выражения требуется минимум 2 минуты, что недопустимо в моем проекте.

Итак, я хотел бы знать, как я могу это оптимизировать. Один из способов, который я могу придумать, - это разделить регулярное выражение и использовать несколько потоков, чтобы минимизировать время выполнения. Это правильный вариант или есть другой способ?

Часть моего регулярного выражения выглядит так:

(ACS | ADDR. limited | C Ahead Info Technologies India private limited | CDI Corporation | CCG India private limited | CEM Solutions | CGI Information Systems and Management Consultants private limited | CGI Information Systems private limited | CGI Information System and Management Consultants private limited | CGI Information and Management private limited | CGI Netvorks | CISCO Systems India private limited | CMC Limited | COMSYS Inc | CORE SHELL TECHNOLOGIES | CRC Software India private limited | CRV Executive Search private limited | CS Software Solutions private Limited | CSC India private Limited | CSS Corp private limited | Кембридж Solutions Limited | Cambridge Solutions | Cambridge Solutions Sdn. Bhd | Candor Ind. Private limited | Candor India private limited | Canvas Creatives private limited | Canvera | Capgemini Business Service India Limited | Capgemini private)

Я использую C # для этого материала.

Просветите, пожалуйста !!!!

7
задан serv-inc 10 September 2017 в 09:02
поделиться