【发布时间】:2020-08-01 05:05:54
【问题描述】:
我有兴趣识别字符串由 1 个重复字符组成的记录,例如 'AAA'、'ZZZZZ'、'EE' 但不是 'A'、'HELLO'、'APPLE'、'AABB'、'MM ALBERT'
以下正则表达式在我测试时有效^(.)\1{1,}$
https://regex101.com/r/dT6dK8/46
但是当我在雪花中使用它时它不起作用。
任何建议将不胜感激。
我在 Snowflake 中测试的内容
SELECT 'AA' regexp '^(.)\1{1,}$' -- AS 'EXPECT TRUE'
,'AAA' regexp '^(.)\1{1,}$' -- AS 'EXPECT TRUE'
,'A' regexp '^(.)\1{1,}$' -- AS 'EXPECT FALSE'
,'AAAAA' regexp '^(.)\1{1,}$' -- AS 'EXPECT TRUE'
,'BBBB' regexp '^(.)\1{1,}$' -- AS 'EXPECT TRUE'
,'AABB' regexp '^(.)\1{1,}$' -- AS 'EXPECT FALSE'
,'HELLO' regexp '^(.)\1{1,}$' -- AS 'EXPECT FALSE'
,'AAAAA' regexp '^(.)\1{1,}$' -- AS 'EXPECT TRUE'
,'BB BB' regexp '^(.)\1{1,}$' -- AS 'EXPECT FALSE'
;
参考文献 Regex to determine if string is a single repeating character
【问题讨论】:
-
'^(.)\\1+$'工作吗? -
@WiktorStribiżew 很遗憾没有。
标签: regex snowflake-cloud-data-platform