問題タブ [preg-match-all]
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.
php - preg_match_all で何が間違っていますか?
オブジェクトは、次のようなセットを見つけて<!-- content:start -->some content here<!-- content:stop -->
、それぞれを処理して配列に入れることですが、一致するものが見つからないたびに、一致するものを出力せずに die ステートメントをエコーします。注:通常、開始タグと終了タグの間のコンテンツは複数行にまたがっています。
現在実行中の関数です。
php - preg_match_all は、異なる/一意の結果を保証します
次のコードを使用して、「$」で始まるスクリプト内のすべての変数を一致させていますが、結果に重複が含まれないようにしたい、つまり、個別/一意である必要があります。
何かアドバイス?
php - preg_match_all crashing/bugging?
Okay, so I have this script that has been the same for at least 3 months now. The code hasn't been modified at all. Nor has my server (VPS) been modified either. But now out of nowhere, started about 24 hours ago, a line in the script is causing the page/script to timeout/crash (white page after about 30 seconds).
The line of code in question is this:
If I comment that line out the page loads fine. The thing is that line is critical to the page. Does anyone know why the preg_match_all function would cause a page to crash? Especially since I haven't changed anything on the server or script..
php - PHP と正規表現で preg_match_all を使用した URL マッチング
imdb リストから映画の URL を取得するクローラーを構築しようとしています。ページ上のすべてのリンクを配列に入れることができ、「タイトル」が含まれているものだけを選択したいと考えています。
どこで$pattern='/title/'
。
次のエラーが表示されます。
これをどうやって進めるかについて何か考えはありますか?どうもありがとう。
php - PCRE: 同時に怠け者で貪欲 (所有量指定子)
PHP で一連のテキスト文字列を PCRE と照合しようとしていますが、最初と 2 番目の間にすべての一致を取得するのに問題があります。
なぜ私がこれをやりたいのか疑問に思っている人がいれば、それは Doc Comments のためです。ああ、Zend がネイティブ/プラグイン関数を作成して、PHP ファイルから Doc コメントを読み取ることを望みます...
次の例 (プレーン) テキストが問題に使用されます。これは常に純粋な PHP コードであり、ファイルの先頭に開始タグが 1 つだけあり、終了タグはありません。構文は常に正しいと想定できます。
問題
クラス内のすべてのメソッドを一致させようとしています。私の正規表現はメソッドをまったく見つけられませんkillFurbies()
。貪欲にすると、クラスの最後のメソッドにのみ一致することを意味し、遅延にすると、最初のメソッドのみに一致することを意味します。
結果:
すべてを一致させるにはどうすればよいですか?:S
入力しているときにこの質問はばかげているとすでに感じているので、どんな助けも感謝します。このような質問に答えようとする人は、私よりも勇敢です!
php - 正規表現 - PHP ルックアラウンド
次のような文字列があります。
私はそれが奇妙な文字列であることを知っていますが、私と一緒にいてください:P
__("Look for content here") の間のコンテンツを探して配列に入れる正規表現が必要です。
つまり、正規表現は、"How are you" と "very good thank you" を検索します。
php - PHP: preg_match_all の文字列インデックスを取得するにはどうすればよいですか?
2つの正規表現があるとしましょう。
とテキスト
私が望むのは、preg_match で次のインデックスを取得することです。
毎回テキストをループせずに preg_match_all を使用してこれらのインデックスを取得する方法はありますか?
編集: ソリューションPREG_OFFSET_CAPTURE !
php - 特定のタグの間にないものをすべて検索
私は使用しています
<?
との間のすべての内容を検索する?>
<?
ここで、との間にないものをすべて見つけたいと思います。?>
私は試しています
しかし、それはうまくいかないようです...
php - PHPで最初に最大の一致を処理するにはどうすればよいですか?
さて、最初に検索してみましたが、この質問や検索フレーズの言い方がよくわかりませんでした。説明させてください。
私は次のようなデータを持っています:
つまり、基本的にはたくさんのポイントです。これは、次のような配列を作成するために、現在使用しているコードです。
ただし、次のような配列が返されます。
画面に表示されている大きな配列を見ると、照合時にその変数の最初のインスタンスが設定されていることがわかります。では、最初に最も広い一致を見つけてから、内部を処理するにはどうすればよいですか。現在使用している関数は次のとおりです。
私が見落としていたのは愚かで単純なことだと確信していますが、それはあなたにとって簡単な答えになると思います。
編集:これは、このサンプルを取得したデータセット全体の完全な出力ログです。タグは印刷され(>と<に置き換えてください)、<code></code>
読みやすいようにすべて巨大な要素の中にあります。
これがめちゃくちゃになっている部分です:
そのため、その中の別のピースの停止タグが最初に出現したときに停止します。反対の方向を考えて、最初に小さいピースを処理し、大きいピースを中断しないようにそれらを置き換えてから、大きいピースを処理する必要がありますか?
php - 区切り文字が 2 回目に出現するまで、文字列内のすべてを正規表現で一致させるにはどうすればよいですか?
preg_match_all
ピリオドとスペースの 2 番目の出現を見つけて、a を絞り込もうとしています。
しかし、それは機能しません{2}
。発生が正しくありません。
preg_match_all
動的HTMLをスクレイピングしているため、使用する必要があります。
文字列からこれをキャプチャしたい: