Привет! Допустим, что имеется N регулярных выражений. Для простоты: 1) Не рассматриваем multi-line mode. 2) Считаем, что все регулярные выражения начинаются с маркера начала строки (^) и заканчиваются маркером конца строки ($). То есть рассматриваются выражения вида: ^abc.*(tcp|udp)[5-8].+$ Очевидно, что регулярные выражения ^a.*$ и ^b.*$ порождают непересекающиеся множества строк. Очевидно также, что регулярные выражения ^a.*$ ^aa.*$ ^.*b$ задают множества строк, пересечение которых не пусто. Например, строка "aaXXXb". Задача заключается в том, чтобы имея N регулярных выражений: 1) Определить, пересекаются ли порождаемые ими множества строк. 2) Если пересекаются, то определить какие именно регулярные выражения "конфликтуют" (результат можно представить в виде треугольной матрицы). Есть ли готовые алгоритмы решения данной задачи? Спасибо!