我尝试创建一个语句来检查字符串是否像常规字符串一样。
DECLARE @RuleName NVARCHAR(MAX) = 'Up to 6 hours'
IF @RuleName LIKE 'Up to [0-9]+ hours'
此语句需要在任何情况下返回true,“to”之后的数字是一个或多个数字。 例如: '最多32小时','最多456小时','最多3小时' 所有这些范例都必须成真。 出于某种原因,它只对我有用而没有+号
IF @RuleName LIKE 'Up to [0-9] hours'
但是只有当只有一位数时表达式才会生效。
如何修复[0-9] +?
感谢
答案 0 :(得分:1)
在Transact-SQL LIKE patterns中,不支持+
量词。
您可以使用%
符号:
%
任何零个或多个字符的字符串。
IF @RuleName LIKE 'Up to [0-9]% hours'