![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 37 Pomógł: 0 Dołączył: 2.10.2005 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Muszę napisać wyrażenia regularne (lub funkcję), które sprawdzi czy dany ciąg znaków występuje w przeszukiwanym dużym tekście jako pełny wyraz. Czyli jeśli szukamy ciagu "przy" to interesuje nas słowo "przy", a nie słowo "przypadek". Myślę, że najprościej będzie zdefiniować z czym może sąsiadować taki ciąg, aby był uznany za pełny wyraz. Do głowy mi przychodzi, że sąsiadować może z: - początkiem stringu - końcem stringu - spacjami oczywiście, w tym innymi znakami tego rodzaju, np. \t, \n, twarda spacja itp - przecinkiem - kropką - średnikiem - dwukorpkiem - apostrofami, cudzysłowiami - nawiasami wszelkiego typu - wszelkimi znaczakmi, kóre na klawiaturze wpisuje się przez SHITF-cyfra - pozostałymi znaczkami typu + - = \ / ? ~ - cyframi (opcjonalnie) Ta lista jest oczywiście umowna i do ustalenia, probelm mam z tym jak to w ogóle napisać? Pewnie funkcja mb_eregi() będzie tu sendem sprawy. Trudności mam dwie: 1) nie "czuję" wyrażeń regularnych kompletnie ![]() 2) teksty, które mam obsłużyć są w UTF-8, i są w nich egzotyczne języki, tak więc odpada zdefiniowanie z czym szukany ciąg nie może sąsiadować. Trzeba określić z czym może - i to określić to w UTF-8. Plik .php jest jako taki także kodowany w UFT-8. Wielkie dzięki! latet Ten post edytował latet 31.12.2005, 14:23:43 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 19.07.2025 - 04:33 |