問題タブ [preg-replace-callback]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1316 参照

php - PHPのURLの照合とpreg_replace_callback()の使用

以下を使用して、$content内のすべてのURLを検索します

ただし、これはのhttp://部分によって異なりますhttp://www.google.com/some/path

私の質問は:

1-で始まるリンクもヒットするように変更するにはどうすればよいwwwですwww.google.comか?

2-主な目的は、リンクを見つけて、それらを別の関数から返される値に置き換えることです。preg_match_callback()を試しましたが、機能していません(おそらく間違って使用しています..

さて、私のロジックでは(おそらく間違っています)、からのすべての一致は。$contentに置き換えられ$outputます。私は何を間違っているのですか?

(匿名関数は使用しないでください-私は古いサーバーでテストしています)

編集I-コメントの後、より詳細に明確にしようとしています

折り返し電話 :

0 投票する
3 に答える
4546 参照

php - PHP コールバックの理解 - preg_replace_callback() と preg_match_all() の違い

の使用について少し混乱していますpreg_replace_callback()

内に$contentいくつかの URL を含む があります。

以前私が使用した

しかし、本当に必要なのは、元の URL を解析した URL に置き換えることです...

だから私はpreg_replace_callbackを試しました:

と :

$url私は、コールバックは、すべての一致がコールバックを呼び出して (再帰的に?) 結果を取得するように動作し、その結果、$content 内の URL を解析された fromにオンザフライで置き換えることができると想定しましたo99_simple_callbac()

しかし、ここでの別の質問(特にこのコメント) が私の疑問を引き起こしました。

実際に一致の配列全体を渡す場合、以前に使用したもの (最初の例) とコールバックの例のpreg_replace_callback()実際の違いは何ですか?preg_match_all()

私は何が欠けている/誤解していますか?? $contentで見つかった URLを解析された URL に置き換える正しい方法は何でしょうか?

0 投票する
1 に答える
852 参照

php - 正規表現エラー preg_replace_callback(): 不明な修飾子 '.' の

次の文字列を取得しました。

真ん中のコードを関数「codeParser」に置き換えようとしています。正規表現は次のとおりです。

しかし、このエラーが発生します:

0 投票する
1 に答える
2118 参照

php - preg_replace_callback でローカル変数を使用する - PHP

preg_replace_callbackPHPでローカル変数を使用する方法。次のコードがあります。

また$str、文字列で$reg_expあり、正規表現です。これらは両方とも明確に定義されています。

ご協力いただきありがとうございます。

0 投票する
3 に答える
2363 参照

php - preg_replace_callback で一致数を知る方法 - PHP

私はphpでこのコードを持っています - :

function にいるとき、最初の一致か2番目の一致かなどpregRepler、現在の状態を知りたいと思います...match number

どうすればいいのですか。??

0 投票する
2 に答える
81 参照

php - 括弧内の文字列を列データに置き換えます

データの特定の列で計算を実行できるようにするコードをいくつか書きました。

たとえば、{1}*{2} は、列 1 が列 2 で乗算される結果になります。私ができる必要があるのは、これらの数値を列の実際の値に置き換えることです。

簡単に言えば、括弧内の値を取得できるようにする必要があり、それを $column["括弧からの値"] のように使用して、計算に挿入する値を取得します。

その後、文字列を評価できます。

前もって感謝します

0 投票する
1 に答える
4427 参照

php - preg_replace_callback 内の変数にアクセスするにはどうすればよいですか?

{{key}}のアイテムを$text渡された配列の値に置き換えようとしています。print_rしかし、何が起こっているのかを確認するために を追加しようとすると、Undefined variable: kvPairsエラーが発生しました。内で自分の変数フォームにアクセスするにはどうすればよいpreg_replace_callbackですか?

アップデート:

スコープを試してみましたが、globalどちらも機能しません。で何が行われているかを確認するために、2 つの print ステートメントを追加しましたpreg_replace_callback

私が得る出力は次のとおりです。

0 投票する
1 に答える
126 参照

php - 連想配列のテキストを別の配列のテキストに置き換える

私はそのような配列を持っています

私もそのようなリストを持っています

私は基本的に、括弧内のすべてのタグを配列の実際の値に置き換えたいと考えています。私は次のことを試しましたが、単一の値を正しく返すだけのようです

そのように見える1つの結果しか返されません

すべての結果をすべて正しい値で配列に戻すにはどうすればよいですか

関数 replace_text を変更して、値を配列に設定し、配列を返すようにしようとしました

しかし、これは戻ります

また、このコンテンツはすべて動的であるため、一度は [first_name] と次の [name_first] またはその他の何かになる可能性があることも付け加えておく必要があります。配列。