MySQL データベースの正規表現はどのように一致しますか? MySQL 正規表現のような使用法

MySQL データベース正規表現はどのように一致するのでしょうか?MySQL 正規表現のような使い方

MySQL 正規表現

前の章では、MySQLが のように ...% あいまい一致を実行します。

MySQL は他の正規表現のマッチングもサポートしています。 REGEXP 演算子は、MySQL で正規表現のマッチングに使用されます。

PHP または Perl を知っていれば、MySQL の正規表現マッチングはそれらのスクリプトに似ているため、これは非常に簡単です。

次の表の正規表現パターンは、REGEXP 演算子で使用できます。

モード描述
^入力文字列の先頭と一致します。 RegExp オブジェクトの Multiline プロパティが設定されている場合、^ は '\n' または '\r' の後の位置にも一致します。
$入力文字列の末尾に一致します。 RegExp オブジェクトの Multiline プロパティが設定されている場合、$ は '\n' または '\r' の前の位置にも一致します。
.「\n」を除く任意の 1 文字に一致します。 '\n' を含む任意の文字を一致させるには、'[.\n]' のようなパターンを使用します。
[...]文字のコレクション。含まれている文字のいずれかと一致します。たとえば、「[abc]」は「pl」に一致します。ai「n」。
[^…]否定文字のセット。文字列に含まれていない任意の文字と一致します。たとえば、「[^abc]」は「plain」の「p」と一致します。
1 2 3 XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX XNUMX 続きp1 または p2 または p3 に一致します。たとえば、「z|food」は「z」または「food」に一致します。 「(z|f)ood」は「zood」または「food」に一致します。
*直前の部分式と 0 回以上一致します。たとえば、zo* は「zoo」だけでなく「z」にも一致します。 * {XNUMX,} と同等です。
+直前の部分式と 1 回以上一致します。たとえば、「zo+」は「zo」や「zoo」に一致しますが、「z」には一致しません。 + は {XNUMX,} と同等です。
{NS}n は負でない整数です。特定の回数一致します。たとえば、「o{2}」は「Bob」の「o」とは一致しませんが、「food」の XNUMX つの o とは一致します。
{n、m}m と n は両方とも負でない整数です(n <= m)。少なくとも n 回、最大 m 回一致します。

インスタンス

上記の正規の要件を理解した後、独自のニーズに応じて正規表現を使用して SQL ステートメントを記述できます。以下に、理解を深めるためにいくつかの小さな例 (テーブル名: person_tbl) を示します。

名前フィールドで「st」で始まるすべてのデータを検索します。

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^st';

名前フィールドが「ok」で終わるすべてのデータを検索します。

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'ok$';

名前フィールドに文字列「mar」を含むすべてのデータを検索します。

mysql> SELECT name FROM person_tbl WHERE name REGEXP 'mar';

名前フィールド内で、母音文字で始まるか、文字列「ok」で終わるすべてのデータを検索します。

mysql> SELECT name FROM person_tbl WHERE name REGEXP '^[aeiou]|ok$';

Hope Chen Weiliang ブログ ( https://www.chenweiliang.com/ ) 共有された「MySQL データベースの正規表現を一致させる方法? MySQL regexp のような使用法」が役立つかもしれません。

この記事のリンクを共有することを歓迎します。https://www.chenweiliang.com/cwl-492.html

さらに多くの隠されたトリックのロックを解除するには、Telegram チャンネルにぜひご参加ください。

気に入ったらシェアして「いいね!」してください!あなたのシェアと「いいね!」が私たちの継続的なモチベーションです。

 

发表评论

バグのあるボックスの内容は公開されません。 必須アイテム * 标注

上へスクロール