![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 83 Pomógł: 0 Dołączył: 31.03.2002 Skąd: Toruń Ostrzeżenie: (0%) ![]() ![]() |
Czy istnieją jakieś nakładki, moduły lub cokolwiek, co umożliwia generowanie prostych parserów w php? Mówiąc "prostych", mam na myśli na przykład parser wyrażeń arytmetycznych z czterema działaniami i nawiasami lub parser wyrażeń logicznych z operatorami logicznymi i nawiasami. A może jest jakiś inny, być może mniej wyrafinowany sposób na rozwiązanie tego zagadnienia?
O co chodzi.. Ano o to, że mam sobie wyrażenie Kod 1*(2+3) i zapuszczam na nim jakąś funkcję, która sprawdza, czy to wyrażenie jest poprawne w zdefiniowanej przeze mnie gramatyce (w tym przypadku jest to wyrażenie arytmetyczne), a jeśli tak, to funkcja coś tam wykonuje z tym cudem, na przykład oblicza to wyrażenie albo zamienia (kompiluje) z notacji infiksowej na notację prefiksową, czyli np. na takie coś:Kod pomnóż(1,dodaj(2,3))
A może ktoś się orientuje, jak to jest rozwiązane w wyszukiwarkach, że np. podaję takie cudo: Kod NOT (ala AND kot) OR (pies XOR chomik) i wyszukiwarka rozpozna to tak, jak chcę.. W niektórych wyszukiwarkach jest to o tyle ciekawie rozwiązane, że jak na przykład źle rozstawię nawiasy, to i tak dostanę jakiś wynik (być może nie ten zamierzony, ale zawsze jakiś).
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 32 Pomógł: 0 Dołączył: 12.05.2002 Skąd: skoczów Ostrzeżenie: (0%) ![]() ![]() |
hej
ja pisalem lexer i parser do wyrazen arytmetycznych . Zbudowanie tych automatow nie jest trudne.... jezeli chcesz to podesle moje programy w Delphi, ktore mozna przerobic na php. Sluze pomoca azaghal@box43.pl |
|
|
![]() ![]() |
![]() |
Aktualny czas: 27.09.2025 - 20:13 |