我一直在 MySQL 中编写一个 REGEX 来识别那些具有 .com TLD 的域。URL 通常采用以下形式
http://example.com/
我想出的正则表达式如下所示:
REGEXP '[[.colon.]][[.slash.]][[.slash.]]([:alnum:]+)[[...]]com[[./.]]'
我们匹配 :// 的原因是我们不会选择 URL,例如http://example.com/error.com/wrong.com
因此我的查询是
SELECT DISTINCT name
FROM table
WHERE name REGEXP '[[.colon.]][[.slash.]][[.slash.]]([:alnum:]+)[[...]]com[[./.]]'"
但是,当它实际上应该返回更多(超过一千)时,它只返回一行。我在查询中犯了什么错误?