2011年09月02日

ereg_replaceでなくて、preg_replaceを使うこと!


英語のクイズです。

彼女に「You don't love me!(私のこと愛してないんだ!)」
と言われてしまいました。
1つだけ間違ってる答えはどれでしょう?

1)Of course, I love you.
2)I do love you.
3)No.

正解は……


3番です(^^)v
否定形の質問に否定で答えると肯定になるんです。
つまり「愛してないの?」と聞かれて「No」と答えれば
「うん、愛してないよ」ってことになっちゃうので気をつけましょう♪


ereg_replace関数は文字列を置き換えるもので、
基本の形はこんな感じです↓

ereg_replace(元の文字列, 置き換える文字列, テキスト)

テキストの中で、元の文字列と一致する部分が
全て置き換える文字列に置き換えられる、というもの。

返ってくるのは変更した後の文字列となります♪

でも……ここで油断してはいけません(自分に対する戒め!)

先日のメモに残したように、ereg_replace はもうすぐ消えるので
公式マニュアルでも非推奨になってる関数なんです。

これから代わりに使うべきなのは…… preg_replace関数!

早速 preg_replace の例を試してみます↓

<HTML>
<HEAD>
<TITLE>preg_replace関数の例</TITLE>
</HEAD>
<BODY>

<?php
//改行と<BR>の置き換え
$text = "1行目\n2行目\n3行目\n";
print(preg_replace("/\n/", "<BR>", $text));

print("<HR>\n");

//ユーザエージェントを置き換える
print(preg_replace("/^Mozilla/", "\\Navigator", $_SERVER["HTTP_USER_AGENT"]));
?>

</BODY>
</HTML>

注意点は1つ目の引数を「//」でくくる(?)こと!

結果はこちら↓

1行目
2行目
3行目
________________________________________________________________

Mozilla/5.0 (Windows NT 6.0; rv:6.0) Gecko/20100101 Firefox/6.0


2番目のがよく分からないな…… Navigator ってブラウザがないからかな?

でも1つ目のはソースコードで見ると、
がちゃんと入ってるから
良しとしましょう!


<ご案内>----------------------------------------------------------------------------------------

nabecchiDRM.jpg

なべっち式ダイレクトレスポンスマーケティング(DRM) 22,800円

----------------------------------------------------------------------------------------<ご案内>



特定のパターンが一致するかどうかチェックするには preg_match関数を使います♪
その辺についてはこちらのブログをどうぞ↓
正規表現の関数: まずは ereg関数

ereg関数の続きで、まだまだつまづく……
eregiも、preg_matchを使うんだよ♪



posted by れい at 17:14| Comment(0) | データ関数 | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

×

この広告は1年以上新しい記事の投稿がないブログに表示されております。