Portál AbcLinuxu, 8. listopadu 2025 16:14
preg_split("%^.*jedinečný řetězec 1.*jedinečný řetězec 2$%", $result);
Řešení dotazu:
preg_match a chcete použít preg_split, přestože nechcete rozdělovat řetězec, ale chcete najít vše mezi nějakou dvojicí slov. Prosím na kolenou, použijte preg_match :)
$ php -r 'preg_match("/foo +(.*) +bar/", "aa foo bb bar ccc", $matches); print_r($matches);'
Array
(
[0] => foo bb bar
[1] => bb
)
Všimněte si, že $matches[1] je to, co hledáte.
Jo a samozřejmě, ke všem zmíněným funkcím a i k různým formám regulárních výrazů v PHP existuje dokumentace. Najdete ji na webu.
C:\>php -r "preg_match_all(\"/foo\s+(.*?)\s+bar/\", \"aa foo bb bar ccc foo druhy bar\", $matches); print_r($matches);"
Array
(
[0] => Array
(
[0] => foo bb bar
[1] => foo druhy bar
)
[1] => Array
(
[0] => bb
[1] => druhy
)
)
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.