Zastanawiam się, czy istnieje DSL (język specyficzny dla domeny) do pisania wyrażeń regularnych? Znam "niewielu" ludzi, którzy faktycznie potrafią czytać i rozumieć regularną ekspresję i wydaje się, że abstrakcja językowa, która "kompiluje" do wyrażeń regularnych, byłaby niesamowitą wygraną, jeśli taka istnieje. Dzięki!Czy istnieje DSL do pisania wyrażeń regularnych?
Odpowiedz
Nie podałeś swojej platformy, ale zakładając C# na podstawie innych tagów, możesz spojrzeć na LINQ to Regex. Nie jestem pewien, czy to naprawdę dobry pomysł, ale jest to najbliżej, o jakim słyszałem.
nie wiem o DSL, ale dla tych, którzy nie rozumieją regex, nie ma
Regular Expression Analyzer
PEGs są znacznie bardziej czytelne (i mocniejsze) alternatywnie do wyrażeń regularnych. Jeśli szukasz czegoś semantycznie równoważnego z normalnymi wyrażeń regularnych, wtedy każda implementacja, która pozwala na komentarze i białe spacje, byłaby wystarczająca.
Emacs posiada DSL s-wyrażenie dla wyrażeń regularnych: http://repo.or.cz/w/emacs.git/blob/HEAD:/lisp/emacs-lisp/rx.el
napisałem REL, an open-source regex DSL.
Jest w scala, ale można eksportować/tłumaczyć swoje wyrazy regularne do innych flavors takich jak .NET.
- 1. idiom id do pisania długich wyrażeń regularnych, osadzonych komentarzy?
- 2. Samouczki do pisania DSL w Ruby
- 3. Bezpieczeństwo wyrażeń regularnych
- 4. Wyszukiwarka wyrażeń regularnych
- 5. Łączenie dowolnych wyrażeń regularnych
- 6. Limit grupy przechwytywania-wyrażeń regularnych wyrażeń regularnych SQL?
- 7. Łączenie wyrażeń regularnych
- 8. Składnia wyrażeń regularnych Haskella
- 9. Ungreedy wyrażeń regularnych
- 10. Generatywne wyrażeń regularnych
- 11. Swift format wyrażeń regularnych?
- 12. Scalanie dwóch wyrażeń regularnych
- 13. Usunąć (odłączyć) pliki pasujące do wyrażeń regularnych
- 14. Używanie wyrażeń regularnych do porównywania numerów
- 15. Każde dobre oprogramowanie do tworzenia wyrażeń regularnych lub narzędzia online do tworzenia wyrażeń regularnych
- 16. Czy usługa BigQuery obsługuje flagi wyrażeń regularnych?
- 17. wyrażeń regularnych brakuje niektórych liter
- 18. Łączenie wyrażeń regularnych w julia
- 19. Zamiana liter z wyrażeń regularnych
- 20. Narzędzie użytkownika końcowego do generowania wyrażeń regularnych
- 21. Biblioteka Pythona do generowania wyrażeń regularnych
- 22. Uproszczenie wyrażeń regularnych w Mathematica
- 23. Python: Kompilowanie wyrażeń regularnych równolegle
- 24. używać wyrażeń regularnych do zastąpienia nakładających podwzorów
- 25. Używanie Parsera do parsowania wyrażeń regularnych
- 26. Łączenie wyrażeń regularnych w JavaScript
- 27. Wykonywanie wyrażeń regularnych w strumieniu
- 28. C# Kod do generowania ciągów pasujących do wyrażeń regularnych
- 29. Czy istnieje aplikacja do tworzenia wyrażeń regularnych poza tekstem przez wybranie obszaru poszukiwanego?
- 30. Punkty początkowe do regularnych serwletów kodujących moje DSL
Inna perspektywa: spójrz na wyrażenia regularne jako "DSL" w przypadku zwykłych automatów. – miku
Wyrażenia regularne to już język specyficzny dla danej domeny - język dla wyrażeń do analizowania. Może nie być bardzo przyjazny dla ludzi, ale jest językiem dla bardzo specyficznej domeny. –