MySQLの比較演算子正規表現マッチングREGEXPの使用の詳細な説明

MySQLの比較演算子正規表現マッチングREGEXPの使用の詳細な説明

1. データを初期化する

`test_01` が存在する場合はテーブルを削除します。
テーブル「test_01」を作成します(
 `id` int(0) NULLではない、
 `stu` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント '学生番号',
 `user` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント 'User',
 `km` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント '件名',
 `fs` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント 'スコア',
 `time` datetime(0) NULL デフォルト NULL コメント 'time',
 BTREE を使用した主キー (`id`)
) エンジン = InnoDB 文字セット = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

`test_01` に INSERT INTO VALUES (1, 'X0219001', '小三', '语文', '98', '2020-08-06 15:51:21');
`test_01` に値 (2, 'X0219001', '小三', '数学', '90', '2020-07-01 15:51:25') を挿入します。
`test_01` に値 (3, 'x0219001', '小三', '英语', '77', '2020-06-01 15:51:28') を挿入します。
`test_01` に INSERT INTO VALUES (4, 'X0219002', '小二', '语文', '98', '2020-08-06 15:51:21');

1. 基本的な文字マッチング

フィールドに「X」が含まれる学生番号と一致します。大文字と小文字を区別しない

SELECT * FROM test_01 WHERE stu REGEXP 'X';

ここに画像の説明を挿入

2. 「.」は任意の文字に一致することを意味する

複数の文字を一致させる必要がある場合は、ドットをさらに追加します。

SELECT * FROM test_01 WHERE stu REGEXP '.9001';
SELECT * FROM test_01 WHERE stu REGEXP '.02..0';

ここに画像の説明を挿入

3. '|'は2つの文字列のうちの1つを検索することを意味します

SELECT * FROM test_01 WHERE user REGEXP '二|四';

ここに画像の説明を挿入

4. '[ ]'は任意の1文字に一致します

SELECT * FROM test_01 WHERE stu REGEXP '0[23]';

ここで[23]は[2|3]と同等であり、1つの[]は1つの文字に一致します。

ここに画像の説明を挿入

マッチング範囲
[0123456789] または [0-9] は 0 から 9 までの数字に一致します
[az]は任意のアルファベット文字に一致します

5. 特殊文字のマッチング

1.\ エスケープ文字

つまり、エスケープです。正規表現内で特別な意味を持つすべての文字は、この方法でエスケープする必要があります。

メタ文字例示する
\\-検索を示す-
\\。検索を示します。

2. \はメタ文字を引用するためにも使用される

メタ文字例示する
\fページ区切り
\n改行
\r入力
\t集計
\v縦書き集計

3. 複数のインスタンスを一致させる

メタ文字例示する
* 0件以上の一致
+ 1 つ以上の一致 ({1, } に等しい)
? 0 または 1 の一致 ({0, 1} に等しい)
{n}指定された一致数
{n, }少なくとも指定された数の一致
{n,m}一致する数字の範囲(mは255を超えない)

4. 文字クラスのマッチング

コード説明する
[:a;数字:]任意の文字と数字([a-zA-Z0-9]と同じ)
[:アルファ:]任意の文字([a-zA-Z]と同じ)
[:空白:]スペースとタブ([\t]と同じ)
[:コントロール:] ASCII 制御文字 (ASCII 0 ~ 31 および 127)
[:桁:]任意の数字([0-9]と同じ)
[:グラフ:] ["print:]と同じですが、スペースはありません
[:より低い:]任意の小文字の行([az]と同じ)
[:印刷:]印刷可能な文字
[:punct:] [:alnum:] または [:cntrl:] のどちらにも含まれない文字
[空間:]スペースを含む任意の空白文字([\f\n\t\r\v]と同じ)
[:アッパー:]任意のサイズの文字([AZ]と同じ)
[:x桁:]任意の16進数([a-fA-F0-9]と同じ)

これで、MySQL 比較演算子正規表現マッチング REGEXP の詳細な使用法に関するこの記事は終了です。MySQL 正規表現マッチング REGEXP の関連コンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MYSQL 演算子の概要
  • MySQL <> および <=> 演算子の紹介
  • MySql における特殊演算子の使用の概要
  • MySQLでよく使われる演算子と関数の概要
  • MySQL ノート — SQL 演算子

<<:  Nginxの仕組みの詳細な説明

>>:  Webpack4プラグインの実装原理についての簡単な説明

推薦する

VMware 仮想マシン ブリッジ モードでインターネットにアクセスできない問題を解決する方法

ステップ1: ローカルイーサネットプロパティをチェックして、VMwareブリッジプロトコルがインスト...

SSMプロジェクトは、ホットデプロイメント構成を実装するためにTomcatとMavenを使用してWARパッケージとしてデプロイされることが多い。

背景ご存知のとおり、JavaEE プロジェクトを開発した後は、そのプロジェクトをサーバーの Tomc...

Ubuntu サーバーで MySQL を設定し、リモート接続を実装する方法

サーバー: Ubuntu Server 16.04 LSSクライアント: Ubuntu 16.04 ...

Vueはプルダウンとスクロールでデータを読み込む例を実装しています

目次ステップ1: インストールステップ2: 引用ステップ3: 使用Webプロジェクトでは、データを読...

MySQL マスタースレーブレプリケーションの実装手順

目次mysql マスタースレーブレプリケーションMySQL マスタースレーブレプリケーション方式My...

JavaScript BOM ロケーション オブジェクト + ナビゲーター オブジェクト + 履歴オブジェクト

目次1. 場所オブジェクト1. URL 2. 場所オブジェクトのプロパティ3. ロケーションオブジェ...

自動同期テーブル構造のMySql開発

開発の問題点開発プロセスでは、データベース フィールドが頻繁に変更されるため、RD 環境と QA 環...

Net Core実装プロセス分析のDoc​​kerインストールと展開

1. Dockerのインストールと設定 #CentOS をインストールし、Docker パッケージを...

MySQL 同時実行制御の原則に関する知識ポイント

Mysql は、高性能なデータ ストレージ サービスを提供する主流のオープン ソース リレーショナル...

同じ日の最初の3つのデータを取得するためのMySQLタイムラインデータ

テーブルデータを作成する テーブル `praise_info` を作成します ( `id` bigi...

フロントエンドエンジニアが作ったクールなインタラクティブウェブサイトを推薦します

ウェブサイトリンク: http://strml.net/サミュエル・リード著ヒント: 昨日、Mome...

VueとReactの詳細

目次1. パノラマII. 背景1. 反応: プロフェッショナル2. ビュー: 凡例3. 技術的な思考...

デザイン: 意志の強いデザイナー

<br />長年の専門的なアートデザイン教育を通じて「美とは何か」を学びましたが、「美を...

Docker のポート解放失敗の解決策

今日、非常に奇妙な状況に遭遇しました。docker イメージを更新した後、docker-compos...

MySQLでユーザー認証情報を表示する具体的な方法

具体的な方法: 1. コマンドプロンプトを開く2. mysql -u root -pコマンドを入力し...