ホームページ バックエンド開発 PHPチュートリアル 正規表現内の最短一致パターンの解析

正規表現内の最短一致パターンの解析

Sep 21, 2017 am 11:52 AM
マッチ 表現

最短一致を使用する必要があります: テキストがある場合は、最長ではなく、可能な限り最短のみを一致させたいと考えます。以下の記事では、正規表現における最短一致パターンの使い方について詳しく紹介していますので、ぜひ参考にしてみてください。

前書き

最近、正規表現を使用してWebページから何かを取得したいと考えました。内容は複雑ではありませんでしたが、多くの問題が発生しました。以下で言うことはあまりありませんが、詳細な紹介を見てみましょう:

<h1>hello world</h1>

の h1 の開始タグと終了タグを一致させるなど、タグの先頭と末尾を一致させるために正規表現を使用する場合、多くの人は次のように書くかもしれません。こんな感じ


/<.*h1>/g
ログイン後にコピー

でも本当にこれでいいの?

* 一致する文字は前の文字の 0 個以上と一致し、貪欲一致であるため

、次の結果が得られます。


明らかにこれは私たちが望んでいることではないので、貪欲なマッチングを最小限のマッチングに変更するにはどうすればよいでしょうか?


/<.*?h1>/g
ログイン後にコピー

以下に示すように、上記の記述で十分です:


実際の原理? も貪欲一致であり、0 から 1 までのみ一致するため、非常に単純である必要があります (

)。そのため、最初の一致に一致すると終了し、* が複数の貪欲一致に一致することを防ぎます。

以上が正規表現内の最短一致パターンの解析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Go の正規表現の実践ガイド: 16 進数のカラー コードを一致させる方法 Go の正規表現の実践ガイド: 16 進数のカラー コードを一致させる方法 Jul 13, 2023 am 10:46 AM

Go 言語の正規表現実践ガイド: 16 進数のカラー コードを照合する方法 はじめに: 正規表現は、パターン マッチングと文字列の検索のための強力で柔軟なツールです。 Go 言語では、組み込みの正規表現パッケージ regexp を使用してこれらの操作を実装できます。この記事では、Go 言語で正規表現を使用して 16 進数のカラーコードを照合する方法を紹介します。正規表現パッケージのインポート まず、Go 言語の正規表現パッケージ regexp をインポートする必要があります。コードの先頭に次の import ステートメントを追加できます。

PHP 正規表現の動作: 文字と数字の一致 PHP 正規表現の動作: 文字と数字の一致 Jun 22, 2023 pm 04:49 PM

PHP 正規表現の練習: 文字と数字の照合 正規表現は、文字列の照合に使用されるツールであり、文字列の検索、置換、分割などの操作を簡単に実装できます。正規表現は、PHP 開発においても非常に便利なツールです。この記事では、PHP 正規表現を使用して文字と数字を一致させる方法を紹介します。単一文字の一致 単一文字を一致させるには、正規表現で文字クラスを使用できます。文字クラスは角かっこ [] で表されます。その中の文字は、一致する文字を表します。ハイフン - を使用して範囲を表すことができます。

PHP 正規表現: 厳密な一致とあいまいな包含の除外 PHP 正規表現: 厳密な一致とあいまいな包含の除外 Feb 28, 2024 pm 01:03 PM

PHP 正規表現: 完全一致と除外 ファジー包含正規表現は、プログラマがテキストを処理する際に効率的な検索、置換、フィルタリングを実行できる強力なテキスト マッチング ツールです。 PHP では、正規表現は文字列処理やデータ マッチングにも広く使用されています。この記事では、PHP で完全一致を実行し、あいまい包含操作を除外する方法に焦点を当て、具体的なコード例を使用して説明します。完全一致 完全一致とは、バリエーションや余分な単語ではなく、正確な条件を満たす文字列のみと一致することを意味します。

PHP 文字列マッチングのヒント: あいまいな組み込み式を避ける PHP 文字列マッチングのヒント: あいまいな組み込み式を避ける Feb 29, 2024 am 08:06 AM

PHP 文字列マッチングのヒント: あいまいな組み込み式を避ける PHP 開発では、文字列マッチングは一般的なタスクであり、通常は特定のテキスト コンテンツを検索したり、入力形式を検証したりするために使用されます。ただし、一致の精度を確保するために、曖昧な包含式の使用を避ける必要がある場合があります。この記事では、PHP で文字列マッチングを行うときにあいまいな包含式を回避するためのテクニックをいくつか紹介し、具体的なコード例を示します。完全一致には preg_match() 関数を使用します。 PHP では、preg_mat を使用できます。

Jedi Submarine 2 でのマッチング方法 Jedi Submarine 2 でのマッチング方法 Feb 27, 2024 pm 08:43 PM

Jedi Submarine 2 は、高品質の傑作ゲームプレイを備えたサードパーソン シューティング ゲームです。友達と一緒にオンライン シューティング バトルの操作の楽しさを探索できる、エキサイティングなゲームプレイがたくさんあります。ゲーム内のオンライン モードはマッチング可能です。一部のプレイヤーは私と対戦することができます。マッチングの操作方法がまだわかりません。今回は、ジェダイ サブマリン 2 のマッチング操作チュートリアルを紹介します。回答: 惑星インターフェイスで [クイック マッチ] をクリックします。ジェダイ サブマリン 2 のマッチング方法. ジェダイ サブマリン 2 のクイック マッチングは非常に優れた機能で、プレイヤーが一緒にマッチングするチームメイトを見つけたり、一緒にミッションに参加したり、より高いミッション評価を得るためにお互いに協力したりするのに役立ちます。マッチング オプションはプラネット インターフェースにあります。タスクを探しているとき、またはパブリック ルームを表示しているときは、下にクイック マッチングが表示されます。クリックしてマッチングを開始します。プレイヤーがクロスレベリングをオンにした場合

Java での型の不一致 - java.lang.ClassCastException Java での型の不一致 - java.lang.ClassCastException Jun 24, 2023 pm 09:30 PM

Java は厳密に型指定された言語であるため、変数の型をコンパイル時に明確に決定する必要があり、これによりプログラムのセキュリティがある程度確保されます。ただし、実行時に型変換例外 java.lang.ClassCastException が発生することがあります。この例外は Java プログラムに表示されます。プログラムがオブジェクトを互換性のない型に変換しようとすると、この例外がスローされます。 Java.lang.ClassCastExcepti

Python 式の構文エラーを解決するにはどうすればよいですか? Python 式の構文エラーを解決するにはどうすればよいですか? Jun 24, 2023 pm 05:04 PM

Python は高レベルのプログラミング言語であり、学習と使用が簡単です。 Python プログラムを作成する必要があると、必然的に構文エラーに遭遇することになります。式の構文エラーはよくあるエラーです。この記事では、Python で式の構文エラーを解決する方法について説明します。式の構文エラーは Python で最も一般的なエラーの 1 つであり、通常は構文の間違った使用法や必要なコンポーネントの欠落によって発生します。 Python では、式は通常、数値、文字列、変数、演算子で構成されます。ごくありふれた

PHP 正規表現: HTML 内のすべての textarea タグと一致する方法 PHP 正規表現: HTML 内のすべての textarea タグと一致する方法 Jun 22, 2023 pm 09:27 PM

HTML は、Web ページ上にコンテンツを表示するために一般的に使用されるページ マークアップ言語です。 HTML では、textarea タグは、ユーザーがテキストを入力または編集できるテキスト ボックスを作成するために使用されます。ページからすべての textarea タグとそのコンテンツを抽出する必要がある場合、PHP 正規表現はシンプルで効果的なソリューションを提供します。この記事では、PHP 正規表現を使用して HTML 内のすべての textarea タグを照合する方法を学びます。通常のテーブルを理解する

See all articles