Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Regx - wyrazy nie rozpoczynające się i/lub niekończące się od "
Forum PHP.pl > Forum > PHP
trueblue
Witajcie,
ma ktoś pomysł jak wyłuskać ze stringu wszystkie wyrazy nie rozpoczynające się i/lub nie kończące od cudzysłowia?

Jeśli mam string:
aaa bb "abc dd eerre "dsada" eweq adasd" qweqweq
mam mieć wyłuskane:
aaa bb dd eerre eweq qweqweq
kapslokk
  1. preg_match_all('@(^| )([^\"]*)($| )@i', 'aaa bb "abc dd eerre "dsada" eweq adasd" qweqweq', $matches);

cos takiego?
nospor
Na chwile obecna przychodzi mi do glowy tylko to

  1. $text = 'aaa bb "abc dd eerre "dsada" eweq adasd" qweqweq';
  2. preg_match_all('/"?[\w]+"?/', $text, $matches);
  3. $words = array_filter($matches[0], function($v) {
  4. return strpos($v, '"') === false;
  5. });
  6.  
  7. print_r($words);
Pyton_000
coś takiego:

Kod
\b(?<!")\w+(?!")\b
nospor
@kapslokk twoj rezultat tez trzeba jeszcze obrobic

@pyton nie \w* a \w+ - wowczas dziala idealnie smile.gif
Pyton_000
@nospor tak prawda smile.gif Ale @trueblue nie jest idiotą i sobie z takim szczegółem poradzi biggrin.gif
nospor
Ja to pisalem z mysla o mniej doswiadczonych uzytkownikach, ktorzy w przyszlosci moga trafic na ten temat wink.gif
trueblue
Dziękuję Wszystkim za zainteresowanie i docenienie smile.gif)
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.