![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 361 Pomógł: 22 Dołączył: 10.02.2015 Ostrzeżenie: (0%) ![]() ![]() |
Rozmyślam teraz nad prostym przykładem, wyczytałem z pewnej książki, myślałem, że błąd w składni jakiś mają, ale w praktyce wychodzi tak jak autor pisze, ale do rzeczy.
Rzecz ma się odnośnie kwantyfikatora chciwego vs niechętnego. Sama ich definicja jest w prosta, pokazuję na przykładzie:
Co do tego przykładu żadnego "ale" nie mam, działa tak jak oczekiwałem, tzn w tablicy są 3 wartości takie jak powinny być, ale:
W tym przykładzie kwantyfikator chciwy zaczyna od całego ciągu, odejmując po kolei 1,2,3,4 natrafia w końcu na dopasowanie i ładuje w tablicę, ale na tym sprawa się kończy, przecież odejmując kolejne znaki nie powinien "złapać" jeszcze "abbbaabbb" oraz "abbb"? Wygląda na to że dopasując pierwszy fragment kończy działanie? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 268 Pomógł: 254 Dołączył: 11.06.2009 Skąd: Świętochłowice Ostrzeżenie: (0%) ![]() ![]() |
Chciwy zawsze łapie najdłuższy, pasujący ciąg. W tym wypadku jest to wszystko po odcięciu liczbowej końcówki (wszak tuż przed nimi są trzy B ). A tego właśnie szuka: trzech b poprzedzonych czymkolwiek (i w tym czymkolwiek zawierają się także inne bbb)
Ten post edytował Comandeer 13.09.2015, 13:23:09 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 21:37 |