Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Kilka wyrazów jako jeden element w wyrażeniu regularnym
shark121
post
Post #1





Grupa: Zarejestrowani
Postów: 62
Pomógł: 5
Dołączył: 31.03.2008

Ostrzeżenie: (0%)
-----


Mam pewien ciąg znaków w formacie

"nazwa<liczba><identyfikator gry><drużyna>"

Objaśnienia:
nazwa - jeden lub więcej wyrazów zawierający tylko i wyłącznie litery języka angielskiego, cyfry i znaki ` ! @ # $ ^ & * ( ) - + [ ] ; ' " : / . ,
liczba - dowolna liczba większa od 0
identyfikator gry - identyfikator gracza w grze o formacie STEAM_0:[0-9]:[0-9]
drużyna - nazwa drużyny CT lub TERRORIST

Na początku pisania kodu założyłem, że na moje potrzeby nazwa nie będzie składać się z więcej niż jednego wyrazu i nie będzie zawierać żadnych dziwnych, niepotrzebnych znaków. Teraz przyszła pora by wykorzystać ten kod w podobnym celu, jednak teraz już nie mam żadnego wpływu na to jaką nazwę otrzymam, wobec czego zmuszony jestem dostosować ten kod pod nowe wymagania. Zmiana dotyczy tylko nazwy, a moja wiedza na temat wyrażeń regularnych kończy się na jednym wyrazie. Próbowałem różnych kombinacji z \s, ale bezskutecznie. Oto jak wygląda moje obecne wyrażenie. Żeby ominąć późniejsze problemy od razu sobie całość przepuszczam przez htmlspecialchars.

  1. preg_match('/&quot;([a-zA-Z0-9]+)&lt;([0-9]+)&gt;&lt;(STEAM_0:[0-9]:[0-9]+)&gt;&lt;(CT|TERRORIST)&gt;&quot;/', $tekst);


Wszystko działa bez zarzutu dopóki nie pojawi się nazwa złożona z więcej niż jednego wyrazu. Jakieś podpowiedzi?
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 03:57