gpt4 book ai didi

Mysql 正则表达式检索任何字符串类型(字母表或非字母表)之间超过 6 位数字的字符串

转载 作者:行者123 更新时间:2023-11-29 01:55:58 25 4
gpt4 key购买 nike

我只需要检索那些匹配特定模式的数据行,例如:

asdasdasd123456@gmail.com

genuineemail90867889@yahoo.com

需要在 MYSQL 中检索具有模式 {all_string}{digits_morethen_6}{all_strings} 的字符串,任何人都可以帮助我使用正确的正则表达式在 sql 脚本中实现

最佳答案

WHERE col REGEXP '[0-9]{7}'

在字符串中的任意位置查找 7 位数字(多于 6 位)。

如果你需要前后的部分都非空,那么:

WHERE col REGEXP '[^0-9][0-9]{7,}[^0-9]'

这将查找至少 7 位数字,前后为非数字。

编辑

示例(第二个 REGEXP):

mysql> SELECT 'asdf2345zxcv' REGEXP '[^0-9][0-9]{7,}[^0-9]';
+-----------------------------------------------+
| 'asdf2345zxcv' REGEXP '[^0-9][0-9]{7,}[^0-9]' |
+-----------------------------------------------+
| 0 |
+-----------------------------------------------+

mysql> SELECT 'asdf2344444445zxcv' REGEXP '[^0-9][0-9]{7,}[^0-9]';
+-----------------------------------------------------+
| 'asdf2344444445zxcv' REGEXP '[^0-9][0-9]{7,}[^0-9]' |
+-----------------------------------------------------+
| 1 |
+-----------------------------------------------------+

关于Mysql 正则表达式检索任何字符串类型(字母表或非字母表)之间超过 6 位数字的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29383276/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com