Preg_match_all ile yardım, kare parantez kaldırmak

0 Cevap php

Ben köşeli parantez içinde içerik çıkarmak bir işlevi yapmak için çalışıyorum ama ben kaldırmak gerekir parantez kaldıramazsınız.

Bu görünmelidir nasıl:

Hello [there] blabla

Dönüşür:

Hello <a href="http://blabla.com/index.php?id=there">linky</a> blabla

Benim geçerli kod:

$txt='Hello [there] blabla';

$re1='.*?'; # Non-greedy match on filler
$re2='(\\[.*?\\])'; # Square Braces 1

if ($c=preg_match_all ("/".$re1.$re2."/is", $txt, $matches))
{
    $sbraces1=$matches[1][0];
    print "<a href='http://blabla.com/index.php?id=$sbraces1'>Linky</a> \n";
}

Benim şu anki kod yapar:

Hello [there] blabla

Dönüşür:

<a href='http://blabla.com/index.php?id=[there]'>Linky</a> 

0 Cevap