【PHPで正規表現置換】


Cent OS 4.2
php-4.3.9
を使用しています。


正規表現が苦手で困っています。

とある文字列

$string = ”ヤフージャパンは、<a href=¥”http://www.yahoo.co.jp¥” target=¥”_blank¥”>ここ</a>ですよ。”;

から、”<a”から”</a>”までの部分を排除したいと思っています。


つまり、実行結果は、

ヤフージャパンは、ですよ。

という感じです。
mb_preg_replaceでもpreg_replaceでもereg_replaceでも良いので、PHPでの正規表現置換をご教授ください。

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:
  • 終了:--
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:ganessa No.1

回答回数13ベストアンサー獲得回数1

ポイント50pt

手元に環境が無いので未確認ですがこんな感じで出来ませんか?

$string = preg_replace(’/<a href.*a>/’, ’’, $string);

もしくは

$string = preg_replace(’/¥<a href.*a¥>/’, ’’, $string);


「ここ」を残してもいいなら下の方が綺麗です。

タグをとりたいならこちらの方が一般的です。

$string = strip_tags($string);

id:keijiro

strip_tagsを忘れていました。

でも、今回は、もとの文字列も消したかったので、

上のやり方で成功しました。

答えを見ると、なんだ、そんなモノかと思うのですが、

なぜか、正規表現が苦手なんです。

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

2005/12/05 16:01:21

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません