Zostałem postawiony przez kolegę interesujące pytanie o operacyjny punkt bólu, który mamy obecnie i jestem ciekawy, czy jest tam coś (narzędzie/biblioteka/algorytm), które może pomóc w automatyzacji tego.Zwykły generator/reduktor ekspresji?
Powiedz, że masz listę wartości literalnych (w naszych przypadkach są to adresy URL). Chcemy, na podstawie tej listy, wymyślić pojedyncze wyrażenie regularne pasujące do wszystkich tych literalnych elementów.
Tak więc, jeśli moja lista:
http://www.example.com
http://www.example.com/subdir
http://foo.example.com
Najprostszą odpowiedzią jest
^(http://www.example.com|http://www.example.com/subdir|http://foo.example.com)$
ale ten dostaje duży dla dużej ilości danych, a mamy limit długości Próbujemy zatrzymać pod.
Obecnie ręcznie zapisujemy wyrażenia regularne, ale nie skalują się zbyt dobrze ani nie są doskonałym wykorzystaniem czasu. Czy istnieje bardziej zautomatyzowany sposób dekomponowania danych źródłowych w celu uzyskania optymalnego pod względem długości wyrażenia dopasowującego wszystkie wartości źródłowe?
wygląda na dobry projekt :) – ennuikiller
Redukcja redukcji: "^. * $" Dopasowuje wszystkie wartości źródłowe. Być może miałeś na myśli taki, który * tylko * pasuje do określonych danych wejściowych? –
Zwróć uwagę na zniekształcone podświetlanie składni. – Svante