Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyrażenie regularne :: 5 znaków - cyfry lub litery
Forum PHP.pl > Forum > PHP
NoiseMc
Witam
Jako, że wyrażenia regularne nigdy nie były i nie będą moją mocną stroną proszę o pomoc w napisaniu wyrażenia regularnego.

Każde wystąpienie ciągu znaków składającego się z 5 znaków: cyfr lub drukowanych liter zamieniam na znaleziony ciąg otoczony tagami <strong>. Musi to być jeden wyraz składający się z pięciu znaków.

Przykład:

'Numer 12345 jest super' => 'Numer <strong>12345</strong> jest super'
'Numer AS45G jest jeszcze lepszy' => 'Numer <strong>AS45G</strong> jest jeszcze lepszy'.

Dziękuję smile.gif

Edit:
Znalazłem:
  1. <?php
  2. preg_replace ( "/[0-9A-Z]{5}/", "<strong>0</strong>", $strTekst )
  3. ?>


Proszę o usunięcie jeżeli zaśmieciłem
sobstel
pattern bedzie wygladal cos w tym rodzaju

Kod
\W[0-9A-Z]{5}\W


o tym jak go uzyc poczytaj w opisie funkcji preg_replace" title="Zobacz w manualu php" target="_manual

EDIT:
widze ze spoznilem sie troche z opdowiedzia tongue.gif jednak na przyszlosc radze najpierw poszukac a potem zadawac pytania ;-)
ActivePlayer
a wyraz 'numer' tez ma 5 znaków i co w tym wypadku ?
escaflowne
Cytat(NoiseMc)
[...] Znalazłem:
  1. <?php
  2. preg_replace ( "/[0-9A-Z]{5}/", "<strong>0</strong>", $strTekst )
  3. ?>


Proszę o usunięcie jeżeli zaśmieciłem

A nie powinno tam być \\1 zamiast \\0?
  1. <?php
  2. preg_replace ( "/[0-9A-Z]{5}/", "<strong>1</strong>", $strTekst )
  3. ?>


Pytam z ciekawości, gdyż zawsze wydawało mi się, że tutaj numeracja zaczyna się od 1 a nie od 0 worriedsmiley.gif
NoiseMc
Chodziło mi o 5 znaków w tym cyfry lub duże litery. 'numer' odpada bo jest małymi, 'NUMER' się zaliczy bo jest dużymi, 'N65UR' też się zaliczy bo zawiera cyfry oraz duże litery.

Zacząłem od \\1 ale nie zadziałało tak więc spróbowałem \\0 i jest ok.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.