ホームページ >バックエンド開発 >PHPチュートリアル >正規表現 任意の文字 PHP 学習正規表現コースウェア ページ 1/2

正規表現 任意の文字 PHP 学習正規表現コースウェア ページ 1/2

WBOY
WBOYオリジナル
2016-07-29 08:38:13882ブラウズ

正規表現
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 回または 1 回一致します
| [1-9]|[a-b]|[A-Z] などの 2 つ以上の選択と一致します それらのいずれかが true として一致します
^ 一致する文字文字列の先頭 (例: abscd===^afdgfgf) は文字列の末尾のアトム (例: dasdsv===v$,
[]) と一致し、角括弧内の任意のアトムと一致します。例: s===[dsadas]
[^] 角括弧内のアトムを除く任意の文字と一致します。たとえば、aaaa===[dddd]
{m} は、直前のアトムがちょうど m 回出現することを意味します。 ,n} は、前の原子が m 回以上出現することを意味し、少なくとも n 回出現することを意味します (n > m)
{m,} は、前の原子が m 回以上出現することを意味します
() 全体で原子
を表します。改行を除く任意の文字と一致します
^ $ これら 2 つの元の文字は一緒にあり、区切り文字付きと呼ばれます
abd===^abc$ この方法でのみ一致できます
パターン マッチングの順序
順序 メタ文字の説明
1 () パターン単位
2? * +{} 繰り返しマッチング
3 ^$ 境界制限 4 | パターン選択 POSIX 正規表現関数
ereg() および eregi()
ereg_replace() および eregi_re place()
split() および spliti()
ereg( ) およびeregi()ereg() 文字列マッチング関数、eregi() は ereg() 関数のサイズ無視バージョンです
構文形式: if (!ereg('^[^./][^/]*$', $ userfile))//形式が一致しない出力 die
{
die('これは不正なファイル名です!')
}
ereg_replace() および eregi_replace (大文字と小文字を無視) replace
string eregi_replace ("正規表現 ", "ターゲットの置換)文字", "置換対象")
文法形式: $string = "これはテストです";
echo str_replace(" は", " でした", $string);
echo ereg_replace("( ) は", "\ 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
n";
出力結果 月: 04; 日: 30; 年: 1973

現在のページ 1/2 12次のページ

上記は正規表現の任意の文字を紹介した PHP 学習正規表現コースウェアのページ 1/2 に正規表現の任意の文字の内容が含まれており、PHP チュートリアルに興味のある友人に役立つことを願っています。

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