- ベストアンサー
タグの置き換え
phpで掲示板を制作してるのですが、テキストエリア内に<a>のタグだけを許可してるのですが、このとき、</a>で閉じずに登録されると、今までのがすべてリンクになってしまいます。 そこでstrposを使用して、</a>があるか判定して、あれば文字列に付け足すという形を作ってやってみたのですが、うまく動作しません。 どなたか助けてください。 あと、<font size>の数値の範囲を指定したいのですがどうすればいいでしょうか?
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
>> </a>があるか判定して、あれば文字列に付け足す 以下ではどうでしょうか? <?php $subject = '<a href="/">abcdef'; $pattern0 = '/<a.*?>/'; $pattern1 = '/<a.*?>.*<\/a>/'; if (preg_match($pattern0, $subject)){ if (!preg_match($pattern1, $subject)){ $subject.='</a>'; } } print($subject); ?> >> あと、<font size>の数値の範囲を指定したいのですが 少々面倒なので手順の説明だけ 1.正規表現で、<font size>の存在確認をする 2.正規表現で、<font size>の数値を抜き取る 3.抜き取った数値を所定範囲内の値か確認する 4.値が異なれば、正しい数値の<font size> に置換する。