MySQL は、正規表現と REGEXP 演算子に基づく別のパターン マッチング操作をサポートしています。 (関連する推奨事項: 「MySQL チュートリアル 」)
1. 強力かつ柔軟なパターン マッチングを提供し、データベース システムの能力を高めるのに役立ちます。 . 検索ユーティリティ。
2.REGEXP は、正規表現のパターン マッチングを実行するときに使用される演算子です。
3.RLIKE は同義語です。また、パターン マッチングを実行する際の柔軟性と制御を向上させる多数のメタキャラクターもサポートしています。
4. バックスラッシュはエスケープ文字として使用されます。二重バックスラッシュが使用されている場合、それらはパターン マッチングでのみ考慮されます。
5.大文字と小文字は区別されません。
#パターン | パターンは何と一致しますか? |
|
そのゼロの前1 つ以上の文字列インスタンス |
|
の前に 1 つ以上の文字列インスタンス |
が続きます。 |
任意の文字 |
#? | は、前述の文字列の 0 個または 1 個のインスタンスと一致します。 |
| #キャレット (^) は文字列の先頭と一致します |
$ | String End |
[abc] | 角括弧内にリストされた任意の文字 |
[^abc] | 角括弧内にリストされていない文字 |
#[A-Z] | は、任意の大文字と一致します。 |
[a-z] | 任意の小文字と一致します |
[0-9] | から一致します0 から 9 までの任意の数値。 |
[[:<:]] 単語の先頭と一致します。 | |
[[:>:]]
単語の末尾と一致します。 |
|
[:class:]
は文字クラスに一致します。つまり、[:alpha:] は文字に一致し、[:space:] はスペースに一致します。[:punct] :] 句読点と一致し、[:upper:] は大文字と一致します。 |
|
p1|p2|p3
rotation; 任意のパターン p1、p2、または p3 |
|
{n}## に一致します#n前の要素のインスタンス |
| {m,n}
前の要素の m から n 個のインスタンス |
|
例:
文字列の先頭と一致します (^):
「sa」で始まるすべての名前を指定します。例 – サム、サマルス。
SELECT name FROM student_tbl WHERE name REGEXP '^sa';
ログイン後にコピー
文字列 ($) の末尾と一致します。
は、「on」で終わるすべての名前を示します。例 - Norton、merton.
SELECT name FROM student_tbl WHERE name REGEXP 'on$';
ログイン後にコピー
先行する文字列の 0 個または 1 個のインスタンスと一致します (?):
は、「com」を含むすべてのタイトルを示します。例 - コメディ、ロマンティック コメディ。
SELECT title FROM movies_tbl WHERE title REGEXP 'com?';
ログイン後にコピー
p1、p2、または p3 の任意のパターンと一致します (p1|p2|p3):
「be」を含むすべてのパターンが表示されます。 「 」または「ae」の名前。例 - Abel, Baer.
SELECT name FROM student_tbl WHERE REGEXP 'be|ae' ;
ログイン後にコピー
は、角括弧 ([abc]) 内にリストされている任意の文字と一致します:
given contains "j" or "z" "すべての名前" 。例 - Lorentz, Rajs.
SELECT name FROM student_tbl WHERE REGEXP '[jz]' ;
ログイン後にコピー
「 a 」 ~ 「 z 」 - ([a-z]) ([a-z] および (.)) の間の任意の小文字と一致します:
文字「b」と「g」、その後に任意の文字、その後に文字「a」が続く名前をすべて取得します。たとえば、Tobias、sewall。
任意の 1 文字 (.)# と一致します。 ##
SELECT name FROM student_tbl WHERE REGEXP '[b-g].[a]' ;
ログイン後にコピー
角括弧内にリストされていない文字と一致します。 ([^abc]):
は、「j」または「z」を含まないすべての名前を示します。例: nerton、sewall.SELECT name FROM student_tbl WHERE REGEXP '[^jz]' ;
ログイン後にコピー
単語末尾 [[:>:]]:
と一致すると、「ack」という文字で終わるすべてのタイトルが表示されます。 Black.SELECT title FROM movies_tbl WHERE REGEXP 'ack[[:>:]]';
ログイン後にコピー
[[:<:]]:
で始まる単語に一致 「for」の文字で始まるすべてのタイトルが表示されます。例 - Forgetting Sarah Marshal .SELECT title FROM movies_tbl WHERE title REGEXP '[[:<:]]for';
ログイン後にコピー
文字クラス [:class:]:
に一致します。つまり、[: lower:] - 小文字、[:digit:] - 数字文字などです。 . 英字を含むすべてのタイトルのみを指定してください。例 - ストレンジャー シングス、アベンジャーズ。SELECT title FROM movies_tbl WHERE REGEXP '[:alpha:]' ;
ログイン後にコピー
この記事は、mysql 正規表現 (Regexp) の詳細な例です。それ!###
以上がmysql正規表現(Regexp)の詳細な例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。