Tak, jest to możliwe, możemy generować wyrażenia regularne z przykładów (tekst -> żądane wyodrębnienia). To działające narzędzie online, które wykonuje swoją pracę: http://regex.inginf.units.it/
Narzędzie online Regex Generator ++ generuje wyrażenie regularne na podstawie podanych przykładów przy użyciu algorytmu wyszukiwania GP. Algorytm GP jest oparty na wielocelowej przydatności, co prowadzi do wyższej wydajności i prostszej struktury rozwiązania (Occam's Razor). To narzędzie jest aplikacją demonstracyjną opracowaną przez Machine Lerning Lab, Trieste Univeristy (Università degli studi di Trieste). Proszę spojrzeć na samouczek wideo tutaj .
To jest projekt badawczy, więc możesz przeczytać o zastosowanych algorytmach tutaj .
Ujrzeć!:-)
Znalezienie znaczącego wyrażenia regularnego / rozwiązania na podstawie przykładów jest możliwe wtedy i tylko wtedy, gdy podane przykłady dobrze opisują problem. Rozważ te przykłady, które opisują zadanie wyodrębniania, szukamy określonych kodów pozycji; przykładami są pary tekst / wyodrębnianie:
"The product code is 467-345A" -> "467-345A"
"The item 789-345B is broken" -> "789-345B"
Patrząc na przykłady (człowiek) facet może powiedzieć: „kody pozycji to np. \ D ++ - 345 [AB]”
Kiedy kod przedmiotu jest bardziej liberalny, ale nie podaliśmy innych przykładów, nie mamy dowodów na dobre zrozumienie problemu. Zastosowanie rozwiązania wygenerowanego przez człowieka \ d ++ - 345 [AB] do następującego tekstu kończy się niepowodzeniem:
"On the back of the item there is a code: 966-347Z"
Musisz podać inne przykłady, aby lepiej opisać, co jest dopasowaniem, a co nie jest pożądanym: --ie:
"My phone is +39-128-3905 , and the phone product id is 966-347Z" -> "966-347Z"
Numer telefonu nie jest identyfikatorem produktu, może to być ważny dowód.