Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyrażenia regularne
Forum PHP.pl > Forum > PHP
adrix88
Witam. Potrzebuje wyciągnąć 2 dane ze skryptu i od rana bawię się z wyrażeniami regularnymi, ale bardzo słabo mi idzie ich zrozumienie. Moglibyście mi pomóc w sformułowaniu dwóch (myślę że prostych) wyrażeń regularnych? Chodzi dokładnie o wyrażenia które będą pasować do poniższych kryteriów:

Wyrażenie 1:
Chodzi o wyciągnięcie cyfry z poniższego zdania:
"XXXXXX 3 socket XXXXXXXXXX"
chodzi konkretnie o wyciągnięcie tej pogrubionej trójki. Jest ona zawsze oddzielona spacją z obu stron oraz występuje po niej słowo socket, reszta parametrów się zmienia i są to cyfry lub wyrazy.

Wyrażenie 2:
Chodzi o wyciągnięcie do tablicy wszystkich liczb które mają przed i po puste znaki spacji. Przykładowy ciąg:
"2732 2398 232 239 2323"
Potrzebuję zebrać wszystkie te cyfry do jednej tablicy.


Z góry dzięki za pomoc
Adi32
ad1.

  1. preg_match('/\s(\d)\ssocket/',$wej,$wyj);
  2. $cyfra = $wyj[1];



ad2.

  1. $explode = explode(' ',$string);


Coś w tym stylu. Nie sprawdzałem;
adrix88
Pierwsze rozwiązanie działa fajnie, ale drugie nie do końca, bo zapomniałem dodać że pomiędzy tymi cyframi jest nieokreślona liczba pustych znaków czyli może być tak: "22 233 334 434", a wtedy to rozwiązanie z explode nic nie da.
Adi32
  1.  
  2. // redukujesz multispacje do jednej
  3. $string = preg_replace('/\s+/',' ',$string);
  4.  
  5. $explode = explode(' ',$string);
  6.  
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.