MySQL
で 、正規表現は一致できますが、部分文字列を返すことはできません。
SUBSTRING_INDEX
を使用できます :
SELECT SUBSTRING_INDEX('www.example.com', '/', 1)
ただし、プロトコルプレフィックスセーフではありません。
プレフィックス付きとプレフィックスなしのURL
を組み合わせて使用している場合 の、これを使用してください:
SELECT url RLIKE '^http://',
CASE
WHEN url RLIKE '^http://' THEN
SUBSTRING_INDEX(SUBSTRING_INDEX(url, '/', 3), '/', -1)
ELSE
SUBSTRING_INDEX(url, '/', 1)
END
FROM (
SELECT 'www.example.com/test/test' AS url
UNION ALL
SELECT 'http://www.example.com/test'
) q