検索
ホームページバックエンド開発PHPチュートリアル【整理と共有】PHP開発でよく使われる正規表現

Regular は文字列一致パターンを記述しますが、多くの人にとって Regular を書くのは「ランドリーの拷問」です。頻繁に使用する必要がない場合は、学習しようと思わないでしょう。この記事では、よく使われる正規表現を整理して紹介します。無料で正規表現を使ってみませんか?ぜひ集めてください!

【整理と共有】PHP開発でよく使われる正規表現

#1. チェックディジットの表現

数字:

^[0-9] *$

N 桁の数値:

^\d{n}$

少なくとも n 桁の数値:

^\d{ n ,}$

m-n 桁:

^\d{m,n}$

ゼロで始まる数字とゼロ以外の数字:

^( 0|[1-9][0-9]*)$

ゼロ以外で始まり小数点以下 2 桁までの数値:

^([1-9][0 -9]*) (.[0-9]{1,2})?$

小数点以下 1 ~ 2 桁の正または負の数値:

^(\-)? \ d (\.\d{1,2})?$

正の数、負の数、および小数:

^(\-|\ )?\d (\.\d )?$

小数点以下 2 桁の正の実数:

^[0-9] (.[0-9]{2})?$

小数点以下 1 ~ 3 桁の正の実数:

^[0-9] (.[0-9]{1,3})?$

ゼロ以外の正の整数:

^[1-9]\d*$ または ^([1-9][0-9]*){1,3}$ または ^\ ?[1-9][0-9]*$

ゼロ以外の負の整数:

^\-[1-9][]0-9"*$ または ^-[1-9]\d*$

非負の整数:

^\d $ または ^[1-9]\d*|0$

非正の整数:

^-[ 1- 9]\d*|0$ または ^((-\d )|(0 ))$

非負の浮動小数点数:

^\d (\.\ d )?$ または ^[1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0 |0$

は正の浮動小数点数ではありません:

^((-\d (\.\d )?)|(0 (\.0 )?))$ または ^(-([1-9]\d *\.\d* |0\.\d*[1-9]\d*))|0?\.0 |0$

正の浮動小数点数:

^ [1-9]\d *\.\d*|0\.\d*[1-9]\d*$ または ^(([0-9] \.[0-9]*[1-9 ][0-9]* )|([0-9]*[1-9][0-9]*\.[0-9] )|([0-9]*[1-9][0 -9]*))$

負の浮動小数点数:

^-([1-9]\d*\.\d*|0\.\d*[1- 9]\d*)$ または ^(-(([0-9] \.[0-9]*[1-9][0-9]*)|([0-9]*[1-9] ][0-9]*\ .[0-9] )|([0-9]*[1-9][0-9]*)))$

浮動小数点数:

^(-?\ d )(\.\d )?$ または ^-?([1-9]\d*\.\d*|0\.\d*[1-9]\ d*|0?\.0 | 0)$

## 2. チェック文字の表現 漢字:

^[\u4e00-\u9fa5 ]{0,}$

英語と数字:

^[A-Za-z0-9] $ または ^[A-Za-z0-9 ]{4,40}$

長さ 3 ~ 20 のすべての文字:

^.{3,20}$

26 の文字列英語の文字:

^[A-Za-z] $

26 個の大文字の英字で構成される文字列:

^[A-Z] $

26 個の大文字で構成される 小文字の英字で構成される文字列:

^[a-z] $

数字と 26 個の英字で構成される文字列:

^[A-Za-z0 -9] $

数字、26 個の英字、またはアンダースコアで構成される文字列:

^\w $ または ^\w{3,20}

中国語、英語、アンダースコアを含む数字:

^[\u4E00-\u9FA5A-Za-z0-9_] $

中国語、英語、アンダースコアやその他の記号を含まない数字:

^ [\u4E00-\u9FA5A-Za-z0-9] $ または ^[\u4E00-\u9FA5A-Za-z0-9]{2,20}$

を含めて入力できます

^%&',;=?$\"

およびその他の文字: [^%&',;=?$\x22] これは禁止されています

~

文字を含む文字を入力してください: [^~\x22]

Others
.*匹配除 \n 以外的任何字符。/[\u4E00-\u9FA5]/ 汉字/[\uFF00-\uFFFF]/ 全角符号/[\u0000-\u00FF]/ 半角符号
^\w ([- .]\w )*@\w ([-.]\w )*\.\ w ([-.] \w )*$

ドメイン名:

[a-zA-Z0-9][-a-zA-Z0-9]{0,62} (/.[a-zA -Z0-9][-a-zA-Z0-9]{0,62}) /.?

インターネット URL:

[a-zA- z]://[^ \s]* または ^http://([\w-] \.) [\w-] (/[\w-./?%&=]*)?$

携帯電話番号:

^(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]| 18[0|1|2 |3|5|6|7|8|9])\d{8}$

電話番号("XXX-XXXXXXX", "XXXX-XXXXXXXX") 、「XXX-XXXXXXXX」、「XXX-XXXXXXXX」、「XXXXXXX」、「XXXXXXXX」):

^(\(\d{3,4}-)|\d{3.4}-)?\d{7 ,8}$

国内電話番号 (0511-4405222、021-87888822):

\d{3}-\d{8}|\d{4}-\d{ 7}

ID 番号 (15 桁、18 桁):

^\d{15}|\d{18}$

短い ID 番号 (数字、文字 x End):

^([0-9]){7,18}(x|X)?$ または ^\d{8,18}|[0-9x]{8,18} |[0- 9X]{8,18}?$

アカウントは合法ですか (文字で始まり、5 ~ 16 バイトが使用可能、英数字のアンダースコアが使用可能):

^[a- zA-Z][ a-zA-Z0-9_]{4,15}$

パスワード (文字で始まり、長さは 6 ~ 18 で、文字、数字、およびアンダースコア):

^[a-zA-Z]\w{5,17}$

強力なパスワード (大文字、小文字、数字の組み合わせを含む必要があります。特殊文字は使用できません)使用され、長さは 8-10 の間です):

^(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).{8,10}$

日付形式 :

^\d{4}-\d{1,2}-\d{1,2}

年間 12 か月(01~09 および 1~12) :

^(0?[1-9]|1[0-2])$

月の 31 日 (01~09 および1~31):

^ ((0?[1-9])|((1|2)[0-9])|30|31)$

<h5> <span class="header-link octicon octicon-link"></span><span style="font-size: 16px;"><strong>钱的输入格式</strong></span> </h5> <p>有四种钱的表示形式我们可以接受:”10000.00” 和 “10,000.00”, 和没有 “分” 的 “10000” 和 “10,000”:<code>^[1-9][0-9]*$

这表示任意一个不以0开头的数字,但是,这也意味着一个字符”0”不通过,所以我们采用下面的形式:^(0|[1-9][0-9]*)$

一个0或者一个不以0开头的数字.我们还可以允许开头有一个负号:^(0|-?[1-9][0-9]*)$

4.这表示一个0或者一个可能为负的开头不为0的数字.让用户以0开头好了.把负号的也去掉,因为钱总不能是负的吧.下面我们要加的是说明可能的小数部分:^[0-9]+(.[0-9]+)?$

必须说明的是,小数点后面至少应该有1位数,所以”10.”是不通过的,但是 “10” 和 “10.2” 是通过的:^[0-9]+(.[0-9]{2})?$

这样我们规定小数点后面必须有两位,如果你认为太苛刻了,可以这样:^[0-9]+(.[0-9]{1,2})?$

这样就允许用户只写一位小数.下面我们该考虑数字中的逗号了,我们可以这样:^[0-9]{1,3}(,[0-9]{3})*(.[0-9]{1,2})?$

1到3个数字,后面跟着任意个 逗号+3个数字,逗号成为可选,而不是必须:^([0-9]+|[0-9]{1,3}(,[0-9]{3})*)(.[0-9]{1,2})?$

备注:这就是最终结果了,别忘了+可以用*替代如果你觉得空字符串也可以接受的话(奇怪,为什么?)最后,别忘了在用函数时去掉去掉那个反斜杠,一般的错误都在这里

xml文件:^([a-zA-Z]+-?)+[a-zA-Z0-9]+\\.[x|X][m|M][l|L]$

中文字符的正则表达式:[\u4e00-\u9fa5]

双字节字符:[^\x00-\xff](包括汉字在内,可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1))

空白行的正则表达式:\n\s*\r (可以用来删除空白行)

HTML标记的正则表达式:]*>.*?\1>|<.></.> (网上流传的版本太糟糕,上面这个也仅仅能部分,对于复杂的嵌套标记依旧无能为力)

首尾空白字符的正则表达式:^\s*|\s*$或(^\s*)|(\s*$) (可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式)

腾讯QQ号:[1-9][0-9]{4,}(腾讯QQ号从10000开始)

中国邮政编码:[1-9]\d{5}(?!\d)(中国邮政编码为6位数字)

IP地址:\d+\.\d+\.\d+\.\d+(提取IP地址时有用)

IP地址:((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d))

IP-v4地址:\\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\b (提取IP地址时有用)

校验IP-v6地址:(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))

子网掩码:((?:(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d)\\.){3}(?:25[0-5]|2[0-4]\\d|[01]?\\d?\\d))

校验日期:^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$(“yyyy-mm-dd“ 格式的日期校验,已考虑平闰年。)

抽取注释:<!--(.*?)-->

查找CSS属性:^\\s*[a-zA-Z\\-]+\\s*[:]{1}\\s[a-zA-Z0-9\\s.#]+[;]{1}

提取页面超链接:(<a>]*)(href="https?:\\/\\/)((?!(?:(?:www\\.)?'.implode('|(?:www\\.)?', $follow_list).'))[^" rel="external nofollow" ]+)"((?!.*\\brel=)[^>]*)(?:[^>]*)></a>

提取网页【整理と共有】PHP開発でよく使われる正規表現:\\]*[src] *= *[\\"\\']{0,1}([^\\"\\'\\ >]*)

提取网页颜色代码:^#([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$

文件扩展名效验:^([a-zA-Z]\\:|\\\\)\\\\([^\\\\]+\\\\)*[^\\/:*?"|]+\\.txt(l)?$

判断IE版本:^.*MSIE [5-8](?:\\.[0-9]+)?(?!.*Trident\\/[5-9]\\.0).*$

附表:

【整理と共有】PHP開発でよく使われる正規表現

【整理と共有】PHP開発でよく使われる正規表現

【整理と共有】PHP開発でよく使われる正規表現

【整理と共有】PHP開発でよく使われる正規表現

【整理と共有】PHP開発でよく使われる正規表現

【整理と共有】PHP開発でよく使われる正規表現

【整理と共有】PHP開発でよく使われる正規表現

【整理と共有】PHP開発でよく使われる正規表現

【整理と共有】PHP開発でよく使われる正規表現

【整理と共有】PHP開発でよく使われる正規表現

##検証後にエラーを見つけた場合は、メッセージ領域で修正してください。 !

推奨学習: 「

PHP ビデオ チュートリアル

以上が【整理と共有】PHP開発でよく使われる正規表現の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はlearnkuで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
誇大広告を超えて:今日のPHPの役割の評価誇大広告を超えて:今日のPHPの役割の評価Apr 12, 2025 am 12:17 AM

PHPは、特にWeb開発の分野で、最新のプログラミングで強力で広く使用されているツールのままです。 1)PHPは使いやすく、データベースとシームレスに統合されており、多くの開発者にとって最初の選択肢です。 2)動的コンテンツ生成とオブジェクト指向プログラミングをサポートし、Webサイトを迅速に作成および保守するのに適しています。 3)PHPのパフォーマンスは、データベースクエリをキャッシュおよび最適化することで改善でき、その広範なコミュニティと豊富なエコシステムにより、今日のテクノロジースタックでは依然として重要になります。

PHPの弱い参照は何ですか、そしていつ有用ですか?PHPの弱い参照は何ですか、そしていつ有用ですか?Apr 12, 2025 am 12:13 AM

PHPでは、弱い参照クラスを通じて弱い参照が実装され、ガベージコレクターがオブジェクトの回収を妨げません。弱い参照は、キャッシュシステムやイベントリスナーなどのシナリオに適しています。オブジェクトの生存を保証することはできず、ごみ収集が遅れる可能性があることに注意する必要があります。

PHPで__invoke Magicメソッドを説明してください。PHPで__invoke Magicメソッドを説明してください。Apr 12, 2025 am 12:07 AM

\ _ \ _ Invokeメソッドを使用すると、オブジェクトを関数のように呼び出すことができます。 1。オブジェクトを呼び出すことができるように\ _ \ _呼び出しメソッドを定義します。 2。$ obj(...)構文を使用すると、PHPは\ _ \ _ Invokeメソッドを実行します。 3。ロギングや計算機、コードの柔軟性の向上、読みやすさなどのシナリオに適しています。

同時性については、PHP 8.1の繊維を説明します。同時性については、PHP 8.1の繊維を説明します。Apr 12, 2025 am 12:05 AM

繊維はPhp8.1で導入され、同時処理機能が改善されました。 1)繊維は、コルーチンと同様の軽量の並行性モデルです。 2)開発者がタスクの実行フローを手動で制御できるようにし、I/O集約型タスクの処理に適しています。 3)繊維を使用すると、より効率的で応答性の高いコードを書き込むことができます。

PHPコミュニティ:リソース、サポート、開発PHPコミュニティ:リソース、サポート、開発Apr 12, 2025 am 12:04 AM

PHPコミュニティは、開発者の成長を支援するための豊富なリソースとサポートを提供します。 1)リソースには、公式のドキュメント、チュートリアル、ブログ、LaravelやSymfonyなどのオープンソースプロジェクトが含まれます。 2)StackOverFlow、Reddit、およびSlackチャネルを通じてサポートを取得できます。 3)開発動向は、RFCに従うことで学ぶことができます。 4)コミュニティへの統合は、積極的な参加、コード共有への貢献、および学習共有への貢献を通じて達成できます。

PHP対Python:違いを理解しますPHP対Python:違いを理解しますApr 11, 2025 am 12:15 AM

PHP and Python each have their own advantages, and the choice should be based on project requirements. 1.PHPは、シンプルな構文と高い実行効率を備えたWeb開発に適しています。 2。Pythonは、簡潔な構文とリッチライブラリを備えたデータサイエンスと機械学習に適しています。

PHP:それは死にかけていますか、それとも単に適応していますか?PHP:それは死にかけていますか、それとも単に適応していますか?Apr 11, 2025 am 12:13 AM

PHPは死にかけていませんが、常に適応して進化しています。 1)PHPは、1994年以来、新しいテクノロジーの傾向に適応するために複数のバージョンの反復を受けています。 2)現在、電子商取引、コンテンツ管理システム、その他の分野で広く使用されています。 3)PHP8は、パフォーマンスと近代化を改善するために、JITコンパイラおよびその他の機能を導入します。 4)Opcacheを使用してPSR-12標準に従って、パフォーマンスとコードの品質を最適化します。

PHPの未来:適応と革新PHPの未来:適応と革新Apr 11, 2025 am 12:01 AM

PHPの将来は、新しいテクノロジーの傾向に適応し、革新的な機能を導入することで達成されます。1)クラウドコンピューティング、コンテナ化、マイクロサービスアーキテクチャに適応し、DockerとKubernetesをサポートします。 2)パフォーマンスとデータ処理の効率を改善するために、JITコンパイラと列挙タイプを導入します。 3)パフォーマンスを継続的に最適化し、ベストプラクティスを促進します。

See all articles

ホット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ヘンタイを無料で生成します。

ホットツール

SublimeText3 Mac版

SublimeText3 Mac版

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

メモ帳++7.3.1

メモ帳++7.3.1

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

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン