ホームページ  >  記事  >  バックエンド開発  >  PHPでよく使われる正規表現(日付、電話、中国語、電子メールなど)

PHPでよく使われる正規表現(日付、電話、中国語、電子メールなど)

WBOY
WBOYオリジナル
2016-07-25 08:59:191083ブラウズ
PHP で一般的に使用される、日付、電話番号、中国語、電子メール アドレスなどの一致に使用できる正規表現をいくつか紹介します。必要な友人は参考にしてください。

1、中国語の文字に一致する正規表現: [u4e00-u9fa5] 注: 中国語を一致させるのは本当に面倒です。この表現を使えば簡単になります。 2. 2 バイト文字 (漢字を含む) と一致します: [^x00-xff] 説明: 文字列の長さの計算に使用できます (2 バイト文字の長さは 2 としてカウントされ、ASCII 文字の長さは 1 としてカウントされます)。 3. 空白行と一致する正規表現: ns*r 説明: 空白行の削除に使用できます。 4. HTML タグに一致する正規表現: ]*>.*? 注: インターネット上で流通しているバージョンはあまりにもひどいものであり、その一部しか一致できず、複雑なネストされたタグには依然として無力です。 5. 先頭および末尾の空白文字に一致する正規表現: ^s* |s*$ 説明: 行頭と行末の空白文字 (スペース、タブ、フォーム フィードなどを含む) を削除するために使用できます。これは非常に便利な式です。 6. 電子メール アドレスに一致する正規表現: w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 注: フォームの検証に非常に役立ちます 7. URL に一致する正規表現: [a-zA-z]+://[^s]* 注: インターネット上で流通しているバージョンは機能が非常に限られており、基本的にはニーズを満たすことができます。 8. 一致するアカウントは合法ですか (文字で始まり、5 ~ 16 バイトが使用可能、英数字のアンダースコアが使用可能): ^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 注: フォームの検証に非常に役立ちます 9. 国内の電話番号と一致します: d{3}-d{8} |d{4}-d{7} 説明: 0511-4405222 や 021-87888822 などの一致する形式 10. Tencent QQ 番号を照合します: [1-9][0-9]{4,} 注: Tencent QQ アカウントは 10000 から始まります 11. 中国の郵便番号と一致します: [1-9]d{5}(?!d) 注: 中国の郵便番号は 6 桁の数字です 12. 一致する ID カード: d{15} |d{18} 注: 中国の ID カードは 15 桁または 18 桁です。 13. IP アドレスの一致: d+.d+.d+.d+ 注: IP アドレスを抽出する場合に便利です 14. 特定の番号を照合します。 1> ^[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) <.>注: 大量のデータを処理する場合に便利です。適用するときは修正に注意してください。 15. 特定の文字列と一致します。

^[A-Za-z]+$ //英字26文字からなる文字列と一致 ^[A-Z]+$ // 26 個の大文字の英字で構成される文字列と一致します ^[a-z]+$ //英小文字26文字からなる文字列と一致 ^[A-Za-z0-9]+$ // 数字と 26 個の英字で構成される文字列と一致します ^w+$ //数字、26 文字の英字、またはアンダースコアで構成される文字列と一致します

16、PHPの通常の日付マッチング

$subject = '2011-01-01 38:20:26|1012657|4|'; $hour = ランド(10,23); $hour = (strlen($hour)>1) $hour : "0{$hour}"; print_r(preg_replace('/(d+)-(d+)-(d+) (d+)/', '$bcw3388-${2}-${3} '.$hour, $subject));

これは非常に実用的な PHP の正規のマッチング形式です。必要に応じて参照してください。

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