Mysql は、REGEXP キーワードを使用して、正規表現の文字一致パターンを指定します。次に、この記事で MySql で正規表現クエリを使用する方法を紹介します。興味のある方は、マジック シード パターンに準拠したテキストを取得および置換するためによく使用されます。たとえば、テキスト ファイルから電話番号を抽出したり、記事内で繰り返される単語を検索したり、ユーザーが入力した特定の機密性の高い単語を置き換えたりできます。 Mysql は、REGEXP キーワードを使用して、正規表現の文字一致パターンを指定します。
Directory1. 文字「^」は、特定の文字または文字列で始まるレコードをクエリします。
SELECT * FROM user WHERE email REGEXP '^a'
で始まるレコードをクエリします。 文字 ' は、特定の文字または文字列で終わるレコードをクエリします。 文字 '$' は、特定の文字または文字列で終わるレコードと一致します。 0 レコードで終わるメールボックスをクエリします
3. 文字列内の任意の文字を置き換えるには、記号「.」を使用します
SELECT * FROM user WHERE phone REGEXP '0$'
メールボックス a と c の間にある 1 文字のレコードをクエリします。プレースホルダー。 REGEXP ‘a..c’ として記述されている場合、つまり、a と c の間に 2 つのドットがある場合、メールボックス内の a と c の間に 2 つの文字が存在する必要があることを意味します。
4. 複数の文字と一致するには「*」を使用します
SELECT * FROM user WHERE email REGEXP 'a.c'
すべてのメールボックス内の m を含むレコードをクエリします。
SELECT * FROM user WHERE email REGEXP 'm*'
5. メールボックス内の m を含むすべてのレコードをクエリするには、次の文字
SELECT * FROM user WHERE email REGEXP '^am*'
を表す文字「+」を使用します。
SELECT * FROM user WHERE email REGEXP 'm+'
6. 「|」で区切られた条件は指定した文字列と一致します
SELECT * FROM user WHERE email REGEXP '^am+'
正規表現は指定した文字列と一致し、文字列は「|」で区切られます。
7. "[]" は、セットが指定された文字列のいずれか 1 つに一致することを意味します。
SELECT * FROM user WHERE email REGEXP 'qq.com|163.com'
"[]" はセットを指定し、上記はクエリ メールボックスに a または z、あるいはその両方を持つメールボックスが含まれていることを意味します。たとえば、[0-9] は設定された間隔内のすべての数字を表し、[a-z] は設定された間隔内のすべての文字を表します。
8. "[^]" は指定された文字以外の文字と一致します
SELECT * FROM user WHERE email REGEXP '[az]'
上記のように、一致するメールボックスには a、b、c、d が含まれず、1、2、3 のレコードも含まれません。
9. {n,} または {n,m} を使用して、文字列連結の出現回数を指定します。
SELECT * FROM user WHERE email REGEXP '[^a-d1-3]'
は、文字 b が少なくとも 2 回出現することを意味します。
SELECT * FROM user WHERE email REGEXP 'b{2}'
概要
以上がMySql での正規表現クエリの使用の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。