繁体   English   中英

如何检测字符串是否包含特殊字符?

[英]How to detect if a string contains special characters?

如何检测字符串是否包含特殊字符,如#、$、^、&、*、@、! SQL Server 2005 中的等(非字母数字字符)?

假设 SQL Server:

例如,如果您将特殊字符归类为非字母数字:

DECLARE @MyString VARCHAR(100)
SET @MyString = 'adgkjb$'

IF (@MyString LIKE '%[^a-zA-Z0-9]%')
    PRINT 'Contains "special" characters'
ELSE
    PRINT 'Does not contain "special" characters'

只需在方括号内添加您不属于特殊类别的其他字符

SELECT * FROM tableName WHERE columnName LIKE "%#%" OR columnName LIKE "%$%" OR (etc.)

在 postgresql 中,您可以在 WHERE 子句中使用正则表达式。 检查http://www.postgresql.org/docs/8.4/static/functions-matching.html

MySQL 有类似的东西: http ://dev.mysql.com/doc/refman/5.5/en/regexp.html

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM