-2

preg_replace比較的大きなテキストでphpを使用して文字列を検索して置換したいと思います。

検索:[3,Name] 置換:<a href="/Name/3/">Name</a>

誰かが私が正しいクエリを作成するのを手伝ってもらえますか?

ありがとう。

4

3 に答える 3

2

クエリの作成を手伝ってください:

 0: [3,Name]

 1: "[" "3" "," "Name" "]"
     1   2   3    4     5

 2: "[" \d+ ","   \w+  "]"
         1         2           

 3: "<a href=\"" 2 "/" 1 "/\">" 2 "</a>

 4: "<a href=\"Name/3/\">Name</a>"

正規表現を作成する場合は、最初にパターンを見つける必要があります。

于 2012-11-07T22:09:19.437 に答える
1

私は次のようなものを使用します:

#\[(\d+),(\w+)\]#i

したがって、結果は次のようになります。

preg_replace('#\[(\d+),(\w+)\]#i', '<a href="/$2/$1/">$2</a>', $text);
于 2012-11-07T22:08:13.450 に答える
0

私は使用しますexplode()

$string='[3,Name]';
$string=str_replace(array(']','['),array('',''),$string);//remove the brackets
$array= explode(',',$string);
echo '<a href="/'.$array[1].'/'.$array[0].'/">'.$array[1].'</a>'

入力の変動性に応じて、エラーチェックを行う場合があります。

于 2012-11-07T22:07:18.937 に答える