如何解决T-SQL 模式匹配/正则表达式 0 或 1 次方括号出现
我一直在尝试匹配,使用 LIKE 或 PATINDEX 格式字符串
[subdomain.domain.com].[dbo].[MyDatabase]
出现在 SQL 字符串中
虽然字符串 [subdomain.domain.com] 将始终以这种格式出现
[dbo] 和/或 [MyDatabase] 可能带有或不带有方括号
我已经尝试了以下
WHERE SQLString LIKE '%[[]subdomain.domain.com[]].[[]{0,1}dbo[]]{0,1}.[[]{0,1}MyDatabase[]] {0,1}%'
或
WHERE SQLString LIKE '%\[subdomain.domain.com\].\[{0,1}dbo\]{0,1}.\[{0,1}MyDatabase\]{0,1}% '转义'\'
我可以创建多个 WHERE OR WHERE 语句,涵盖每种可能性,但想了解在这种情况下为什么正则表达式不起作用。
解决方法
square bracket 是 col = df.columns
子句中的一个特殊字符,表示“指定范围内的任何单个字符(例如 [a-z])。”
您可以在文本中可能有方括号的任何地方使用 like
特殊字符。类似的东西:
%
因为这将匹配“任何零个或更多字符的字符串”,如果那里有方括号,很好,如果没有,它仍然匹配。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。