ホームページ バックエンド開発 PHPチュートリアル 特殊文字を検証するための PHP 正規表現方法

特殊文字を検証するための PHP 正規表現方法

Jun 24, 2023 pm 12:05 PM
php 正規表現 特殊文字

インターネットの急速な発展に伴い、ますます多くの Web サイトが登場しました。これらの Web サイトの開発過程では、正規表現がますます使用されます。たとえば、ユーザーが登録ページでユーザー名、パスワード、その他の機密情報を入力する場合、入力されたデータのセキュリティを確保するために、開発者は通常、正規表現を使用してデータの正当性を確認します。この記事では、開発者がユーザー データのセキュリティをより適切に保護できるように、PHP 正規表現を使用して特殊文字を検証する方法に焦点を当てます。

  1. 正規表現とは何ですか?

正規表現は、テキスト文字列と一致するために使用される式です。これはテキストと特殊文字で構成されており、文字列が特定のパターンに一致するかどうかを確認するために使用できます。 PHP は一般的なサーバーサイド言語として、正規表現を使用した強力な文字列処理機能を提供します。 PHP の正規表現は通常、「/pattern/」のように 2 つのスラッシュで囲まれます。

  1. 特殊文字コードを検証するための PHP の正規表現

以下は、入力文字列に特殊文字が含まれているかどうかを検証するための PHP のコードです:

function check_special_chars($str) {
    if(preg_match('/[^a-zA-Z0-9_]/', $str)) {
        return false;
    }
    return true;
}
ログイン後にコピー

上記のコードでは、preg_match() 関数を使用して、文字列が指定された正規表現と一致するかどうかを確認します。正規表現「/1/」は、関数が一致する必要がある文字のセットを指定します。「^」は非を意味し、a~z、A に一致しないことを意味します。 ~Z、または 0 ~9 とアンダースコア (_) を除くすべての文字。入力文字列にこれらの文字のいずれかが含まれている場合、関数は false を返し、それ以外の場合は true を返します。

  1. PHP の正規表現検証関数

preg_match() 関数に加えて、PHP では、次の表に示すように、他のいくつかの正規表現検証関数も提供しています。

#関数説明##preg_match()preg_replace()preg_split( )preg_quote() preg_grep()preg_last_error()これらの関数には独自の使用方法やパラメータがありますので、詳しくはPHPの公式ドキュメントや関連書籍を参照してください。
実行正規表現一致
正規表現検索を実行し、置換を実行します
正規表現によって文字列を配列に分割する
正規表現文字をエスケープする
正規表現に一致する配列内の要素を返します
最後のエラー コードを返します。 PCRE 定期実行

正規表現を使用してユーザー名、パスワード、その他のフィールドを検証する
  1. 次の例は、正規表現を使用してユーザー名、パスワードなどを検証する方法を示しています。機密性の高いフィールド、情報。

ユーザー名を確認する

通常、ユーザー名を確認するには、文字、数字、アンダースコアのみを含むなどのいくつかのルールに従う必要があり、長さは 6 ~ 16 文字である必要があります。 。以下はユーザー名を検証するための正規表現です:

'/^[a-zA-Z0-9_]{6,16}$/'
ログイン後にコピー

この正規表現では、^ を使用して最初の文字の一致を示し、$ で文字列の終わりを示し、{6,16} で文字の長さが一致することを示します。 6 から 16 の間である必要があります。

検証パスワード

検証パスワードには、少なくとも 1 つの数字、1 つの大文字と 1 つの小文字、および長さを含むなどのいくつかのルールにも準拠する必要があります。 8~20文字以内です。以下は、パスワードを検証するための正規表現です:

'/^(?=.*d)(?=.*[a-z])(?=.*[A-Z]).{8,20}$/'
ログイン後にコピー

この正規表現では、^ を使用して最初の文字の一致を示し、$ で文字列の終わりを示し、(?=.

d) で一致することを示します。少なくとも 1 つの数字が含まれています。 ( ?=.

[a-z]) は、少なくとも 1 つの小文字が含まれていることを意味します。 (?=.*[A-Z]) は、少なくとも 1 つの大文字 .{8 が含まれていることを意味します。 ,20} は、文字の長さが 8 ~ 20 である必要があることを意味します。

電子メール アドレスの検証

電子メール アドレスの検証も、開発者が実装する必要がある機能です。電子メール アドレスを検証するための正規表現は次のとおりです。

'/^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(.[a-zA-Z0-9_-]+)+$/'
ログイン後にコピー

この正規表現では、^ は最初の文字の一致を示し、$ は文字列の終わりを示し、@ は "@" 記号を示し、[a -zA-Z0- 9_-] は、電子メール名に文字、数字、アンダースコア、半角マイナス記号を含めることができることを意味します。 (.[a-zA-Z0-9_-]) は、電子メール ドメイン名に複数のサブを含めることができることを意味します・ドメイン名は半角ドット(.)で区切って指定し、最後のサブドメイン名は2~4文字の文字または数字にする必要があります。

概要

この記事の導入部を通じて、特殊文字の PHP 正規表現検証の方法について学び、いくつかの一般的な正規表現検証テクニックを学びました。開発者はユーザー データのセキュリティを確保する必要があり、正規表現を使用して入力データの有効性を検証することは非常に重要な手順です。この記事が皆様のお役に立てれば幸いです。インターネットをより安全にするために一緒に取り組みましょう。


a-zA-Z0-9_

以上が特殊文字を検証するための PHP 正規表現方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

AI Hentai Generator

AI Hentai Generator

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 にアップグレードする方法について説明します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

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 は、

See all articles