人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

PHPの正規表現で質問です。

$a = [りんご][みかん][もも]...

【定義】
・$aは[と]で単語が囲まれた値が連続した文字列。
・[...]の繰り返し回数(文字列の長さ)は1回以上不定回数まで。

上記の様な値があり、これを

$a = <a href="りんご">りんご</a> <a href="みかん">みかん</a> <a href="もも">もも</a>...

に変更したい場合、preg_replace関数等を利用して一気に変換したい
のですが、どのような正規表現、記述方法が考えられるでしょうか?
※そもそもこの方法は不可能なのでしょうか?

正規表現が不得手なため、困っています。
宜しくお願いします。

●質問者: hts1004
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:PHP みかん りんご 単語 定義
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● tezcello
●35ポイント
$a = '[りんご][みかん][もも]';
var_dump(preg_replace('/\[(.+?)\]/', '<a href="$1">$1</a>', $a));

で結果は、

<a href="りんご">りんご</a><a href="みかん">みかん</a><a href="もも">もも</a>
◎質問者からの返答

ありがとうございます。助かりました。


2 ● pahoo
●35ポイント

可能です。以下のようになります。

コードは UTF-8 で書いてください。

<?php
mb_internal_encoding('UTF-8');
mb_regex_encoding('UTF-8');

$a = "[りんご][みかん][もも]";
$a = preg_replace("/\[([^\]]*)\]/u", "<a href=\"$1\">$1</a>", $a);

echo $a;
?>

参考サイト

◎質問者からの返答

ありがとうございます。助かりました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ