2009-08-12 18 views
5

Bir öğenin, örneğin bir öğenin etiketleri arasındaki içeriği eşleştirmek için php cinsinden bir regex'e ihtiyacım var. Perl uyumlu preg_match ile <body> ve </body>.PHP'de HTML gövdesinin içeriğiyle eşleşen Regex

Şimdiye kadar birlikte çalıştığımız:

// $content is a string with html content 

preg_match("/<body(.|\r\n)*\/body>/", $content, $matches); 

print_r($matches); 

... ama çıktı boş bir dizidir. olarak doc açıklandığı

preg_match("/<body.*\/body>/s", $content, $matches); 

:

cevap

0

varsayılan bir satır ile perl regexp'in maç

Son eklendikten sonra veya sonra ekleyerek çok satırlı arama yapmak istediğinizi belirtmeniz gerekir/

örn:

$> perl -e 'print $1 if "bla\nbla\n<body>\nfirst line\n second line\n</body>\nbla" =~ /^.*<body>(.*)<\/body>.*$/s' 

bkz: http://www.perl.com/pub/a/2003/06/06/regexps.html

+0

-m işaretini ayarlamak yeterli değildir, çünkü yalnızca^ve $ operatörlerinin davranışını değiştirir. – Wookai

İlgili konular