我们如何使用MySQL和正则表达式查找域名
我在数据库中有一些域列表,例如
http://www.masn.com/index.html
http://www.123musiq.com/index.html
等等
我需要的是
http://www.masn.com
http://www.123musiq.com
我怎样才能做到正则表达式???
回答:
在中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
以上是 我们如何使用MySQL和正则表达式查找域名 的全部内容, 来源链接: utcz.com/qa/420418.html