質問

PHPでは、 preg_replace ()?

どちらも機能し、まったく同じことをしているように見えますが、ここで何かが欠けていると思います。

役に立ちましたか?

解決

何も見逃していません。 $ nのみを使用できる状況は1つだけです:

  

後方参照の直後に別の番号が続く置換パターンで作業する場合(つまり、一致したパターンの直後にリテラル番号を配置する場合)、後方参照に使い慣れた\ 1表記を使用することはできません。たとえば、\ 11は、\ 1後方参照の後にリテラル1が必要なのか、\ 11後方参照の後に何もないのかがわからないため、preg_replace()を混乱させます。この場合、解決策は\ $ {1} 1を使用することです。これは、孤立した$ 1後方参照を作成し、1をリテラルのままにします。

それ以外は、両者の間に違いはまったくありません。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top