ホームページ  >  記事  >  php教程  >  最も一般的に使用される PHP 正規表現のコレクション

最も一般的に使用される PHP 正規表現のコレクション

WBOY
WBOYオリジナル
2016-06-21 09:08:021139ブラウズ

正規表現

正規表現は文字列処理、フォーム検証などで使用され、実用的で効率的です。この記事では、一般的に使用されるいくつかの表現をまとめます。

漢字に一致する正規表現: [u4e00-u9fa5]

コメント: 漢字の一致は本当に頭の痛い問題ですが、この表現を使えば簡単になります

全角文字 (漢字を含む) の一致: [^x00-xff]

コメント: 文字列の長さの計算に使用できます (全角文字の長さは 2 としてカウントされ、ASCII 文字の長さは 1 としてカウントされます)

空白行と一致する正規表現: ns*r

コメント: 空白行の削除に使用できます

HTML タグに一致する正規表現: <(S*?)[^>]*>.*?|<.*?

コメント: インターネット上で流通しているバージョンは残念ながら一部しか一致せず、複雑なネストされたタグにはまだ無力です。

先頭および末尾の空白文字に一致する正規表現: ^s*|s*$

コメント: 行頭と行末の空白文字 (スペース、タブ、フォームフィードなどを含む) を削除するのに使用でき、非常に便利な式です

メールアドレスと一致する正規表現: w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*

コメント

URL に一致する正規表現: [a-zA-z]+://[^s]*

コメント: インターネット上で流通しているバージョンは機能が非常に限られており、基本的には上記のバージョンでニーズを満たすことができます。

一致するアカウントは合法ですか (文字で始まり、5 ~ 16 バイトが許可され、英数字のアンダースコアが許可されます): ^[a-zA-Z][a-zA-Z0-9_]{4,15}$

コメント: フォームの検証に非常に役立ちます

一致する国内電話番号: d{3}-d{8}|d{4}-d{7}

コメント: 0511-4405222 や 021-87888822 などの一致する形式

一致する Tencent QQ 番号: [1-9][0-9]{4,}

コメント: Tencent QQ アカウントは 10000 から始まります

一致する中国の郵便番号: [1-9]d{5}(?!d)

コメント: 中国の郵便番号は 6 桁の数字です

一致する ID カード: d{15}|d{18}

コメント: 中国の ID カードは 15 桁か 18 桁です

一致する IP アドレス: d+.d+.d+.d+

コメント: IP アドレスを抽出するときに便利です

特定の番号を一致させる:

^[1-9]d*$ // 正の整数と一致する

^-[1-9]d*$ // 負の整数と一致する

^-?[1-9]d*$ // 整数と一致する

^[1-9]d*|0$ // 負でない整数 (正の整数 + 0) と一致します

^-[1-9]d*|0$ // 正でない整数 (負の整数 + 0) と一致します

^[1-9]d*.d*|0.d*[1-9]d*$ // 正の浮動小数点数と一致します

^-([1-9]d*.d*|0.d*[1-9]d*)$ // 負の浮動小数点数と一致します

^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$ // 浮動小数点数と一致します

^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$ // 負でない浮動小数点数と一致します (正の浮動小数点数 + 0) )

^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$ //非正の浮動小数点数(負の浮動小数点数)と一致ポイント番号 + 0)

コメント: 大量のデータを処理する場合に便利です。適用する際は修正に注意してください

特定の文字列と一致する:

^[A-Za-z]+$ //英字26文字からなる文字列と一致

^[A-Z]+$ // 26 個の大文字の英字で構成される文字列と一致します

^[a-z]+$ // 26 個の小文字の英字で構成される文字列と一致します

^[A-Za-z0-9]+$ // 数字と 26 個の英字で構成される文字列と一致します

^w+$ // 数字、26 文字の英字、またはアンダースコアで構成される文字列と一致します


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