PHPのpreg_replaceで正規表現で置換したいと思っているのですが

複数回ではなく、一回だけ置換したいと思っております。

'/test/o'

との様にoにすると、うまくいくとみたのですが、どうもPHPではうまくいきません。
何か方法はありませんか?

回答の条件
  • URL必須
  • 1人2回まで
  • 登録:2008/08/19 20:05:56
  • 終了:2008/08/20 14:23:11

回答(3件)

id:Leclerc No.1

Leclerc回答回数86ベストアンサー獲得回数62008/08/19 20:15:42

ポイント27pt

http://jp2.php.net/preg_replace

mixed preg_replace ( mixed pattern, mixed replacement, mixed subject [, int limit [, int &count]] )

limit

subject 文字列において、各パターンによる 置換を行う最大回数。デフォルトは -1 (制限無し)。

limit引数に1を渡せばよいかと思います。

id:Rewish No.2

rewish回答回数9ベストアンサー獲得回数32008/08/19 20:27:42

ポイント27pt

第4引数のlimit引数で、置換を行う最大回数を設定出来ます。

<?php
preg_replace('/test/', '', 'testtest', 1);

PHP: preg_replace - Manual

http://jp.php.net/preg_replace

id:amphisbaena No.3

amphisbaena回答回数131ベストアンサー獲得回数02008/08/19 21:37:38

ポイント26pt

limitパラメータで、パターンによる置き換えの回数を指定できます。

デフォルトでは-1(無制限)になっているので、これに1と指定すればよいのでは?

http://phpspot.net/php/man/php/function.preg-replace.html

id:makocan

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

解決しました。

2008/08/20 14:23:10

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

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

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

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

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません