我在数据库中有一些域列表,比如
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)
Run Code Online (Sandbox Code Playgroud)
但是,它不是协议前缀安全的.
如果您使用的是前缀和未加前缀的混合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
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8443 次 |
| 最近记录: |