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

PHP初心者です。

下記が動きません。なんででしょう?
やりたいことは、<b>テキスト</b>の除去です。

$str = str_replace("\<b\>テキスト\<\/b\>", "", $str);

簡単な質問で恐縮ですが、御教示ください。

●質問者: にらたま
●カテゴリ:インターネット ウェブ制作
✍キーワード:PHP STR テキスト 初心者
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● y-kawaz
●27ポイント

バックスラッシュが余計なものです。

<?php
$str = str_replace("<b>テキスト</b>", "", $str);
?>
◎質問者からの返答

なぜかそれだと置換してくれないんです。

で正規表現ってやつかなあと思い、見よう見真似で上記の書き方をした次第です。


2 ● y-kawaz
●27ポイント
<?php
$str = "やりたいことは、<b>テキスト</b>の除去です。やりたいことは、<b>テキスト</b>の除去です";
echo str_replace("<b>テキスト</b>", "", $str);
echo preg_replace("|<b>.*?</b>|", "", $str);
?>

上記コードを試してみてください。どちらも正常に動きますよ。

ちなみに2つ目は正規表現を使って ? を除去しています。

◎質問者からの返答

わかりました!

秀丸で編集してたのですが、エンコードが違っていたようです。。

「閉じて開く」で解決しました。大変失礼しました。


3 ● pahoo
●26ポイント

str_replaceはマルチバイト文字(全角文字など)には対応していませんので、mbシリーズの関数を使い、下記のようにすればよいでしょう。

$str = mb_ereg_replace('<b>テキスト</b>', "", $str);

また、文字エンコードがEUC-JPなら、念のため、下記の指定をしておくとよいでしょう。

mb_internal_encoding('EUC-JP');
mb_regex_encoding('EUC-JP');

参考サイト

◎質問者からの返答

わかりました!

秀丸で編集してたのですが、エンコードが違っていたようです。。

「閉じて開く」で解決しました。大変失礼しました。

関連質問


●質問をもっと探す●



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