查找包含非 [a-z] 或 [0-9] 字符的标签
Find tags containing characters that aren't [a-z] or [0-9]
我想为 Stack Exchange Data Explorer 创建一个查询,其中 return 任何包含特殊字符的标签。 (具体来说,任何不是 a-z
、0-9
、-
或 +
的字符)
搜索应该 return 标签,例如 c#, c#-to-f#, .net, and python-2.7。
我尝试了几种不同的解决方案,但每种解决方案似乎都有自己的一系列问题。
SELECT * FROM tags WHERE tagname NOT REGEXP '^[a-zA-Z0-9]*$'
来源: Oracle SQL - REGEXP_LIKE contains characters other than a-z or A-Z
错误: REGEXP_LIKE
不是可识别的内置函数名称。
SELECT * FROM tags WHERE tagname NOT REGEXP '^[a-zA-Z0-9]*$'
来源: How to get all rows that contain characters others than [a-zA-Z] in MySQL
错误:REGEXP
附近的语法不正确
与其尝试在 SQL 中表达 "contains only non-special characters" 并否定它,更容易表达 "contains a special character":
SELECT * FROM tags WHERE tagname LIKE '%[^-+a-z0-9]%'
您会发现这包含 很多 个包含 .
的标签。您可能希望将此添加到要忽略的字符中。
SELECT * FROM tags WHERE tagname LIKE '%[^-+a-z0-9.]%'
我想为 Stack Exchange Data Explorer 创建一个查询,其中 return 任何包含特殊字符的标签。 (具体来说,任何不是 a-z
、0-9
、-
或 +
的字符)
搜索应该 return 标签,例如 c#, c#-to-f#, .net, and python-2.7。
我尝试了几种不同的解决方案,但每种解决方案似乎都有自己的一系列问题。
SELECT * FROM tags WHERE tagname NOT REGEXP '^[a-zA-Z0-9]*$'
来源: Oracle SQL - REGEXP_LIKE contains characters other than a-z or A-Z
错误: REGEXP_LIKE
不是可识别的内置函数名称。
SELECT * FROM tags WHERE tagname NOT REGEXP '^[a-zA-Z0-9]*$'
来源: How to get all rows that contain characters others than [a-zA-Z] in MySQL
错误:REGEXP
与其尝试在 SQL 中表达 "contains only non-special characters" 并否定它,更容易表达 "contains a special character":
SELECT * FROM tags WHERE tagname LIKE '%[^-+a-z0-9]%'
您会发现这包含 很多 个包含 .
的标签。您可能希望将此添加到要忽略的字符中。
SELECT * FROM tags WHERE tagname LIKE '%[^-+a-z0-9.]%'