ホームページ php教程 php手册 PHP 学習正規表現コースウェア ページ 1/2

PHP 学習正規表現コースウェア ページ 1/2

Jun 13, 2016 pm 12:28 PM
php 関数 関数 存在する 勉強 図書館 埋め込む 通常 類似性 表現

正規表現

PHP には正規表現関数ライブラリのセットが 2 つあります。これら 2 つの機能は似ていますが、実行効率が若干異なります。
1 つのセットは PCRE (Perl 互換正規表現) によって提供されます。式) ライブラリ 。接頭辞「preg_」が付いた名前の関数。
POSIX (Portable Operating System Interface of Unix) 拡張機能 (PHP のデフォルト) によって提供されるセット。接頭辞「ereg_」が付いた名前の関数を使用します。
PHP では、正規表現には 3 つの関数があります。
マッチングは、文字列から情報を抽出するためにもよく使用されます。
一致したテキストを新しいテキストに置き換えます。
文字列を小さな情報のセットに分割します。

正規表現には少なくとも 1 つのアトムが含まれます。
アトム (英語文字などの通常の文字)
メタキャラクター (特殊な機能を持つ文字)
パターン修正文字 (正規表現のセマンティクスの変更)


アトム (Atom)
a~z、A~Z、0~9 などの単一の文字、数字。
(ABC)のようなパターン単位は、複数の原子から構成される大きな原子として理解できます。
[ABC] などのアトミック テーブル。
再利用されたパターン単位 (\1 など)
一般的なエスケープ文字 (d、D、w など)
エスケープ メタ文字 (*,. など)

POSIX 正規表現全体POSIX 正規表現の名前は、Unix のポータブル オペレーティング システム インターフェイス、つまり UNIX ポータブル オペレーティング システム実装インターフェイスを意味します。

POSIX 正規表現の構築は、数式の作成と同じです。つまり、さまざまなメタキャラクタと演算子を使用して小さな式を組み合わせて、より大きな式を作成します。


メタ文字
メタ文字は、正規表現を構築するために使用される特別な意味を持つ文字です。メタキャラクター自体を正規表現に含める場合は、その前に「」を付けてエスケープする必要があります。
メタキャラクターの説明
* 前のアトムと一致します
0 回、1 回以上 1 と一致します。前のアトム
に 0 回以上一致しますか? 前のアトム
に 0 回または 1 回一致します | [1-9]|[a-b]|[A-Z] およびすべての一致が true です
^ 文字列の先頭のアトムと一致します。 たとえば、abscd===^afdgfgf は
$ と一致します。 文字列の末尾のアトムと一致します。 たとえば、dasdsv===v$
[] マッチング方法括弧内の任意の原子 例: s===[dsadas]
[^] 角括弧内の原子を除く任意の文字と一致します。 例: aaaaa===[dddd]
{m} 前の原子が正確に m 回出現する
{m,n} は、前の原子が少なくとも m 回、少なくとも n 回 (n>m) 出現することを意味します
{m,} は、前の原子が m 回以上出現することを意味します回
( ) 全体はアトム
を表します。 改行を除く任意の文字と一致します。

^ $ これら 2 つの元の文字をまとめて、区切り付き
abd===^abc$ と呼びます。この方法のみです。 can Match

パターンマッチング順序
order メタキャラクター 説明
1 () パターン単位
2 ? * {} 繰り返し一致
3 ^$ 境界制限
4 | パターン選択

POSIX 正規表現関数
ereg() および eregi()
ereg_replace() および eregi_replace( )
split() および spliti()

ereg() および eregi() ereg() 文字列マッチング関数、eregi() は ereg() 関数のサイズ無視バージョンです
構文形式:if (!ereg('^[^./][^/]*$', $userfile))//出力形式と一致しません die
{
die('これは不正なファイル名です! ');
}

ereg_replace() および eregi_replace (大文字と小文字を区別しない)
string eregi_replace ("正規表現"、"置換対象文字"、"置換対象")
構文形式: $string = "これはテストです";
echo str_replace(" is", "was", $string);
echo ereg_replace("( )is", "\1was", $string ) ;\1 最初の全体
を継承します echo ereg_replace("(( )is)", "\2was", $string);\2 2 番目の全体

split() および spliti を継承します (大文字と小文字は無視します) ) 正規表現を使用して文字列を配列に分割します
list: 配列内の値に変数を割り当てます
構文形式: $date = "04/30/1973"
list($month, $day, $year) = split ('[/.-]', $date);// 3 つの変数の対応する形式をリストします// どのような形式で、誰を分割するか
echo " Month: $ month; Day: $day; Year: $year
n";
出力結果 月: 04; 日: 30; 年: 1973

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

今まで知らなかったことを後悔している 7 つの PHP 関数 今まで知らなかったことを後悔している 7 つの PHP 関数 Nov 13, 2024 am 09:42 AM

あなたが経験豊富な PHP 開発者であれば、すでにそこにいて、すでにそれを行っていると感じているかもしれません。あなたは、運用を達成するために、かなりの数のアプリケーションを開発し、数百万行のコードをデバッグし、大量のスクリプトを微調整してきました。

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 JSON Web Tokens(JWT)とPHP APIでのユースケースを説明してください。 Apr 05, 2025 am 12:04 AM

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます

母音を文字列にカウントするPHPプログラム 母音を文字列にカウントするPHPプログラム Feb 07, 2025 pm 12:12 PM

文字列は、文字、数字、シンボルを含む一連の文字です。このチュートリアルでは、さまざまな方法を使用してPHPの特定の文字列内の母音の数を計算する方法を学びます。英語の母音は、a、e、i、o、u、そしてそれらは大文字または小文字である可能性があります。 母音とは何ですか? 母音は、特定の発音を表すアルファベットのある文字です。大文字と小文字など、英語には5つの母音があります。 a、e、i、o、u 例1 入力:string = "tutorialspoint" 出力:6 説明する 文字列「TutorialSpoint」の母音は、u、o、i、a、o、iです。合計で6元があります

PHPでの後期静的結合を説明します(静的::)。 PHPでの後期静的結合を説明します(静的::)。 Apr 03, 2025 am 12:04 AM

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? PHPマジックメソッド(__construct、__destruct、__call、__get、__setなど)とは何ですか? Apr 03, 2025 am 12:03 AM

PHPの魔法の方法は何ですか? PHPの魔法の方法には次のものが含まれます。1。\ _ \ _コンストラクト、オブジェクトの初期化に使用されます。 2。\ _ \ _リソースのクリーンアップに使用される破壊。 3。\ _ \ _呼び出し、存在しないメソッド呼び出しを処理します。 4。\ _ \ _ get、dynamic属性アクセスを実装します。 5。\ _ \ _セット、動的属性設定を実装します。これらの方法は、特定の状況で自動的に呼び出され、コードの柔軟性と効率を向上させます。

See all articles