Nasıl php regex kullanarak, foo şu URL'den ve bir varialbe saklamak ayıklamak?
http://example.com/pages/foo/inside.php
Ben bir cevap için biraz googled ama beni anlamak için en regex örnekleri çok karmaşık idi.
If ilk bölümü değişmez olduğu:
$s = 'http://example.com/pages/foo/inside.php';
preg_match('@^http://example.com/pages/([^/]+).*$@', $s, $matches);
$foo = $matches[1];
Ana bölümü not bir çizgi her şeyi maçları ([^/]+) hangi (/). Biz dize sonraki eğik çizgi veya sonuna ("foo" bölümü son olabilir eğer) bulma kadar eşleşen konum olduğunu.
Peki, foo ayıklanmasını istediğiniz ne kural dayalı çoklu çözümler, orada olabilir. Eğer henüz belirtmek vermedi, ben sadece (yanlış ise, soru genişletin lütfen) geçerli dosyanın klasör adını almak istediğiniz tahmin edeceğiz.
<?php
$str = 'http://example.com/pages/foo/inside.php';
preg_match( '#/([^/]+)/[^/]+$#', $str, $match );
print_r( $match );
?>