国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

ホームページ バックエンド開(kāi)発 PHPチュートリアル 正規(guī)表現(xiàn)のゼロ幅アサーション例の詳細(xì)説明

正規(guī)表現(xiàn)のゼロ幅アサーション例の詳細(xì)説明

Jun 16, 2017 am 11:25 AM
通常 正規(guī)表現(xiàn)

この記事では、正規(guī)表現(xiàn)のゼロ幅アサーションを中心に、ゼロ幅アサーションの概念、分類(lèi)、PHP 実裝スキル、および関連する注意事項(xiàng)を簡(jiǎn)単に紹介します。必要な方は參考にしてください。

この記事の例では、正規(guī)表現(xiàn)。ゼロ幅アサーション。參考のために皆さんと共有してください。詳細(xì)は次のとおりです。

前書(shū)き

以前、正規(guī)表現(xiàn)についての記事を書(shū)きました (http://www.jb51.net/article/111359.htm)この記事では、正則化について詳しく紹介していますが、ゼロ幅アサーションの導(dǎo)入についてはほとんど言及されていません。次に、このコンテンツを追加します。この記事では、主に次の問(wèn)題を解決します:

① ゼロ幅アサーションとは何ですか? なぜゼロ幅アサーションを使用する必要があるのですか?

コンセプト

ゼロ幅アサーションは、ほとんどの場(chǎng)所でこのように定義され、特定のコンテンツの前後を検索するために使用されます (ただし、これらのコンテンツは含まれません)。つまり、b ^ $ < のようなアンカー機(jī)能があります。特定の條件 (つまりアサーション) を満たす必要がある位置を指定するために使用されるため、ゼロ幅アサーションとも呼ばれます。私の理解では、一致検索は位置が限定された文字列の前後で実行されると考えています。したがって、ゼロ幅アサーションの実行プロセスは 2 つの狀況に分かれます。順?lè)较颔ⅴ旦`ションの場(chǎng)合、最初のステップはアサーションが真であるかどうか (つまり、特定の條件を満たすかどうか) を判斷することです。 2 番目のステップでは、條件が満たされた場(chǎng)合に次のステップに進(jìn)みます。逆アサーションの場(chǎng)合、最初のステップは正規(guī)表現(xiàn)の順序で照合することです。 2 番目のステップは、逆承認(rèn)に遭遇したときに逆承認(rèn)が満たされるかどうかを判斷することです。

肯定先読みアサーション

肯定先読みアサーションとは、文字列內(nèi)の対応する位置の前を検索して一致させ、exp の前の位置を一致させるには (?=exp) を使用します。

$str="abcgwcab";
$parent=&#39;/bc(?=gw)/&#39;;
$str=preg_match($parent,$str,$match);
var_dump($match);
/**
輸出結(jié)果:
int 1
array (size=1) 
  0 => string &#39;bc&#39; (length=2)
  */

解析: まず文字列「abcgwcab」內(nèi)の gw 位置を見(jiàn)つけ、それが true であるとアサートし、次に bc と一致します。正規(guī)表現(xiàn)が $parent='/bc(?=gw)ca/' のように記述されている場(chǎng)合、一致は失敗します。

反先読みアサーション

反先読みアサーションとは? exp が続かないものと一致させるには (?!exp) を使用します。

例:

$str="abcgwcab";
$parent=&#39;/bc(?!ww)gw/&#39;;
$str=preg_match($parent,$str,$match);
var_dump($str);
var_dump($match);
/**
輸出:
int 1
array (size=1)
 0 => string &#39;bcgw&#39; (length=4)
*/

解析: まず文字列に bc が含まれているかどうかを判斷し、次に ww が続くかどうかを判斷し、最後に gw と一致します。逆アサーションの前後に他の一致條件を追加できることがわかります。

前後のアサーション

前後のアサーションとは、文字列內(nèi)の対応する位置以降を検索して照合することであり、(?<=exp)はexpの後の位置と一致します

例:

$str="abcgwcab";
$parent=&#39;/(?<=gw)ca/&#39;;
$str=preg_match($parent,$str,$match);
var_dump($str);
var_dump($match);
/**
輸出結(jié)果:
int 1
array (size=1)
 0 => string &#39;ca&#39; (length=2)
*/

分析: 最初のステップは、文字「abcgwcab」に gw が含まれているかどうかを確認(rèn)することです。戻り結(jié)果は true であり、次に 2 番目のステップに進(jìn)み、gw の後に ca があるかどうかを確認(rèn)します。

反事後アサーション

反事後アサーションとは?前のものが bc であること bc であるため、false が返されます

練習(xí)問(wèn)題

例 1: d+(?=abc)

文字列に 'abc' が含まれるかどうかを判斷します。前に or が含まれています

例 2: (?<=dd)w 文字列內(nèi)に 2 つの連続する數(shù)字とその後に文字があるかどうかを判斷します

例3:d {3} (?!55) d+(?=abc)
判斷一個(gè)字符串中是否包含'abc',且其前面是否包含一個(gè)或多個(gè)數(shù)字

例2:(?<=dd)w
判斷字符串中是否存在連續(xù)兩個(gè)數(shù)字,且其后面包含一個(gè)字母

例3:d{3} (?!55)
判斷字符串中是否包含連續(xù)三個(gè)數(shù)字,且三個(gè)數(shù)字后面不是55

例4:(?<!ac)wd文字列に 3 つの連続する數(shù)字が含まれており、その 3 つの數(shù)字の後に 55 が続いていないかどうかを判斷します。 ac)wd
文字列に文字と數(shù)字の組み合わせが含まれており、その前に ac が付いていないかどうかを判斷します

概要

先読みアサーションとフォローアサーションの違いは何ですか? up アサーション?

先読みアサーションはアサーションの前の正規(guī)表現(xiàn)です。アサーションはアサーションの前にある正規(guī)表現(xiàn)であり、アサーションは他の一致するアサーションの前にあります。正規(guī)表現(xiàn)では

です。

以上が正規(guī)表現(xiàn)のゼロ幅アサーション例の詳細(xì)説明の詳細(xì)內(nèi)容です。詳細(xì)については、PHP 中國(guó)語(yǔ) Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負(fù)いません。盜作または侵害の疑いのあるコンテンツを見(jiàn)つけた場(chǎng)合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫(huà)像を無(wú)料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫(xiě)真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫(xiě)真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類(lèi)リムーバー

Video Face Swap

Video Face Swap

完全無(wú)料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡(jiǎn)単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無(wú)料のコードエディター

SublimeText3 中國(guó)語(yǔ)版

SublimeText3 中國(guó)語(yǔ)版

中國(guó)語(yǔ)版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強(qiáng)力な PHP 統(tǒng)合開(kāi)発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開(kāi)発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

PHP 正規(guī)表現(xiàn)の検証: 數(shù)値形式の検出 PHP 正規(guī)表現(xiàn)の検証: 數(shù)値形式の検出 Mar 21, 2024 am 09:45 AM

PHP 正規(guī)表現(xiàn)の検証: 數(shù)値形式の検出 PHP プログラムを作成する場(chǎng)合、ユーザーが入力したデータを検証する必要がよくあります。一般的な検証の 1 つは、データが指定された數(shù)値形式に準(zhǔn)拠しているかどうかを確認(rèn)することです。 PHP では、正規(guī)表現(xiàn)を使用してこの種の検証を行うことができます。この記事では、PHP 正規(guī)表現(xiàn)を使用して數(shù)値形式を検証する方法を紹介し、具體的なコード例を示します。まず、一般的な數(shù)値形式の検証要件を見(jiàn)てみましょう。 整數(shù): 0 ~ 9 の數(shù)字のみが含まれ、プラスまたはマイナス記號(hào)で始めることができ、小數(shù)點(diǎn)は含まれません。浮動(dòng)小數(shù)點(diǎn)

Go で正規(guī)表現(xiàn)を使用してタイムスタンプを照合するにはどうすればよいですか? Go で正規(guī)表現(xiàn)を使用してタイムスタンプを照合するにはどうすればよいですか? Jun 02, 2024 am 09:00 AM

Go では、正規(guī)表現(xiàn)を使用してタイムスタンプを照合できます。ISO8601 タイムスタンプの照合に使用されるような正規(guī)表現(xiàn)文字列をコンパイルします。 ^\d{4}-\d{2}-\d{2}T \d{ 2}:\d{2}:\d{2}(\.\d+)?(Z|[+-][0-9]{2}:[0-9]{2})$ 。 regexp.MatchString 関數(shù)を使用して、文字列が正規(guī)表現(xiàn)と一致するかどうかを確認(rèn)します。

正規(guī)表現(xiàn)を使用して Golang でメールアドレスを検証するにはどうすればよいですか? 正規(guī)表現(xiàn)を使用して Golang でメールアドレスを検証するにはどうすればよいですか? May 31, 2024 pm 01:04 PM

正規(guī)表現(xiàn)を使用して Golang で電子メール アドレスを検証するには、次の手順に従います。 regexp.MustCompile を使用して、有効な電子メール アドレス形式と一致する正規(guī)表現(xiàn)パターンを作成します。 MatchString 関數(shù)を使用して、文字列がパターンと一致するかどうかを確認(rèn)します。このパターンは、次のようなほとんどの有効な電子メール アドレス形式をカバーします。 ローカル ユーザー名には文字、數(shù)字、および特殊文字を含めることができます: !.#$%&'*+/=?^_{|}~-` ドメイン名には少なくとも次の文字が含まれている必要があります。 1 文字の後に文字、數(shù)字、またはハイフンを続けます。トップレベル ドメイン (TLD) は 63 文字を超えることはできません。

Golang 正規(guī)表現(xiàn)を使用して複數(shù)の単語(yǔ)または文字列を照合するにはどうすればよいですか? Golang 正規(guī)表現(xiàn)を使用して複數(shù)の単語(yǔ)または文字列を照合するにはどうすればよいですか? May 31, 2024 am 10:32 AM

Golang の正規(guī)表現(xiàn)では、パイプ文字 | を使用して複數(shù)の単語(yǔ)または文字列を一致させ、各オプションを論理 OR 式として區(qū)切ります。例: 「fox」または「dog」に一致します: fox|dog は「quick」、「brown」または「lazy」に一致します: (quick|brown|lazy) 「Go」、「Python」または「Java」に一致します: Go| Python |Java は単語(yǔ)または 4 桁の郵便番號(hào)と一致します: ([a-zA

Goで正規(guī)表現(xiàn)を使用してパスワードを確認(rèn)するにはどうすればよいですか? Goで正規(guī)表現(xiàn)を使用してパスワードを確認(rèn)するにはどうすればよいですか? Jun 02, 2024 pm 07:31 PM

Go で正規(guī)表現(xiàn)を使用してパスワードを検証する方法は次のとおりです。 パスワードの最小要件 (小文字、大文字、數(shù)字、特殊文字を含む少なくとも 8 文字) を満たす正規(guī)表現(xiàn)パターンを定義します。 regexp パッケージの MustCompile 関數(shù)を使用して正規(guī)表現(xiàn)パターンをコンパイルします。 MatchString メソッドを使用して、入力文字列が正規(guī)表現(xiàn)パターンと一致するかどうかをテストします。

漢字フィルタリング: PHP 正規(guī)表現(xiàn)の練習(xí) 漢字フィルタリング: PHP 正規(guī)表現(xiàn)の練習(xí) Mar 24, 2024 pm 04:48 PM

PHP は広く使用されているプログラミング言語(yǔ)であり、特に Web 開(kāi)発の分野で人気があります。 Web開(kāi)発の過(guò)程では、ユーザーが入力したテキストをフィルタリングして検証する必要がよくありますが、その中でも文字フィルタリングは非常に重要な操作です。この記事では、PHP で正規(guī)表現(xiàn)を使用して漢字フィルタリングを?qū)g裝する方法と、具體的なコード例を紹介します。まず最初に、Unicode の漢字の範(fàn)囲は u4e00 から u9fa5 までである、つまりすべての漢字がこの範(fàn)囲內(nèi)にあることを明確にする必要があります。

Golang 正規(guī)表現(xiàn)の使用ガイド Golang 正規(guī)表現(xiàn)の使用ガイド Apr 08, 2024 pm 02:15 PM

Go の正規(guī)表現(xiàn)は強(qiáng)力な文字列処理ツールを提供します。正規(guī)表現(xiàn)操作には regexp パッケージを使用します。正規(guī)表現(xiàn)構(gòu)文を使用して文字列を照合および操作します。文字クラス、繰り返し文字、グループ化、アンカー、および境界を照合します。 MatchString で文字列を照合し、FindStringSubmatch で一致を抽出し、ReplaceAllString で文字列を置換します。アプリケーション シナリオには、電子メール アドレスの検証、HTML リンクの抽出などが含まれます。

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

PHP 正規(guī)表現(xiàn): 完全一致と除外 ファジー包含正規(guī)表現(xiàn)は、プログラマがテキストを処理する際に効率的な検索、置換、フィルタリングを?qū)g行できる強(qiáng)力なテキスト マッチング ツールです。 PHP では、正規(guī)表現(xiàn)は文字列処理やデータ マッチングにも広く使用されています。この記事では、PHP で完全一致を?qū)g行し、あいまい包含操作を除外する方法に焦點(diǎn)を當(dāng)て、具體的なコード例を使用して説明します。完全一致 完全一致とは、バリエーションや余分な単語(yǔ)ではなく、正確な條件を満たす文字列のみと一致することを意味します。

See all articles