MySQLには、要求していることを実行するための組み込み機能がありません。いくつかの新しい関数を定義することで可能になりますが、データベースにアクセスしているプログラミング言語でそれを行う方がおそらく簡単です。
ただし、メールアドレスのような単純なものについては、正規表現を使用する必要はまったくありません。 SUBSTRING_INDEX()
機能
、as:
SELECT
SUBSTRING_INDEX(email, '@', 1) AS Username,
SUBSTRING_INDEX(SUBSTR(email, LOCATE('@', email)), '.', 1) AS Domain,
SUBSTRING_INDEX(email, '.', -1) AS TLD
FROM users;
つまり、それは次のとおりです。
- ユーザー名=最初の「@」の前のすべて
- ドメイン=最初の「@」と最初の「。」の間のすべて
- TLD=最後の'。'以降のすべて