[PHP]Oznaczanie imion |
[PHP]Oznaczanie imion |
19.03.2024, 09:20:56
Post
#1
|
|
Grupa: Zarejestrowani Postów: 1 493 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) |
cześć, w mini-forum mam obecnie funkcję oznaczania imion. Generalnie jest zdefiniowana i niezmienna lista użytkowników i imię każdego z nich jest pisane innym kolorem w treści postów na forum. Obecnie mam to zorganizowane w niezbyt elegancki sposób, co prawda działa, ale raczej zużywa zbędne zasoby. Chcę to przerobić. Każde imię oczywiście odmienia się przez przypadki, więc dla takiego 'Michał' mamy 14 przypadków - liczba pojedyncza i mnoga. W tekście użytkownik oczywiście wpisuje imię w poprawnym przypadku, więc pozostaje tylko podmiana z 'Michał' lub 'michał' lub 'Michal' lub 'michal' na <span id="michal">ucfirst(strtolower($wpisane_imie))</span>. Jak to najlepiej rozwiązać?
Dodatkowo wpada problem imienia 'Adam' gdzie zwykłe str_replace spowoduje mi spustoszenie np. w słowie 'spadam'. Zapodajcie pls pomysły. Dzięki. Ten post edytował sadistic_son 19.03.2024, 09:22:21 -------------------- Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami... -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc! -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |
|
|
19.03.2024, 10:05:16
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 519 Pomógł: 6308 Dołączył: 27.12.2004 |
pokaz jak to robisz teraz
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
19.03.2024, 17:26:03
Post
#3
|
|
Grupa: Zarejestrowani Postów: 1 493 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) |
Oczywiście te tablice mają dużo więćej elementów. Zostawiłem tylko kilka. Imion mam kilka, plus każdy ma jakąś ksywkę i jej warianty, plus wszystko odmienione przez przypadki to daje kilkaset elementów. W sumie mogę jeszcze elementy niezmienne, tj '<span class="' oraz '</span>' wywalić przed nawias Ten post edytował sadistic_son 19.03.2024, 17:28:15 -------------------- Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami... -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc! -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |
|
|
19.03.2024, 17:50:18
Post
#4
|
|
Grupa: Moderatorzy Postów: 36 519 Pomógł: 6308 Dołączył: 27.12.2004 |
ok, powinienes uzyc preg_replace. to uzywa wyrazen regularnych i zalatwiloby tez twoj problem z "spadam"
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
19.03.2024, 18:52:18
Post
#5
|
|
Grupa: Zarejestrowani Postów: 1 493 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) |
Nie bardzo mam pomysł jak. Przecież to też będzie wymagać od groma wyrażeń regularnych wyjdzie tego niewiele mniej niż po prostu powymieniane wszystkich wariantów. No ale ok, i co potem, też to musi być wewnątrz while prawda?
-------------------- Uśpieni przez system, wychowani przez media,
Karmieni zmysłami, próżnymi żądzami... -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- Jesteś zbyt leniwy, żeby się zarejestrować? Ja jestem zbyt leniwy aby Ci pomóc! -+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- |
|
|
20.03.2024, 00:31:52
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 863 Pomógł: 228 Dołączył: 20.03.2005 Skąd: Będzin Ostrzeżenie: (0%) |
Skoro tak dużo imion i systemów, to należy sobie to zoptymalizować. Np. po cholerę jest <span> w tablicy?
Wykorzystaj sobie jakąś bazę, albo jakąś uproszczoną formę notacji np. JSON:
Ale to kropla w morzu zmian. Np. w tekscie: Kod Adam jest na dworze Karola z Adamczychy. Padam dzisiaj ze zmęczenia. Wykryje mi Adam, Adamczychy, ale już nie Padam. Ale jak dodam parametr "/({$format_imienia}?[a-z]{1,})/i" - to już Padam mi oznaczy. |
|
|
20.03.2024, 15:19:26
Post
#7
|
|
Grupa: Zarejestrowani Postów: 377 Pomógł: 70 Dołączył: 15.07.2014 Ostrzeżenie: (0%) |
Musi to być słownik. Najlepiej już z odmianami imion. Wtedy można "kolorować" imiona przez JS-a nawet, żeby przerzucić to na procesor użytkownika.
|
|
|
Wersja Lo-Fi | Aktualny czas: 26.09.2024 - 19:55 |