gpt4 book ai didi

mysql - mysql 中的正则表达式匹配失败

转载 作者:行者123 更新时间:2023-11-29 23:51:21 25 4
gpt4 key购买 nike

我遇到查询问题。我使用 MySQL 作为数据库。我想使用 REGEX 来匹配我期望的结果,表格是:

table A

-----------------------------------------------
| ID | Description |
-----------------------------------------------
| 1 | 29th Marine Regiment/1st Bn (1/29) |
| 2 | new 21 new 2 new |
| 3 | new 2th 2 (2/2) |
| 4 | 2new 2new (2/2) |
| 5 | new2 new 2new |

我需要得到的结果:

-----------------------------------------------
| ID | Description |
-----------------------------------------------
| 1 | 29th Marine Regiment/1st Bn (1/29) |

我有正则表达式的正确结果

^(29[^0-9]+)[^0-9]+1[^0-9]+\([a-zA-Z0-9/-]*\)\s*$

http://www.regexr.com/但我没有在 MySQL 中得到结果。

http://sqlfiddle.com/#!2/7bd4b/2

有人知道这是怎么发生的吗?

最佳答案

(将我的评论变成答案。)

您需要转义反斜杠!例如。 \(\\(.

还有一些其他问题:

  • 开头的组没有在任何地方使用,因此可以将其删除。

  • [^0-9]+[^0-9]+(一旦组被删除)是相当多余的。它可以缩短为 [^0-9]{2,},但在本例中,看起来 [^0-9]+ 就足够了。

  • fiddle 版本有一些奇怪的 {},必须删除。

结果是:

'^29[^0-9]+1[^0-9]+\\([a-zA-Z0-9/-]*\\)\\s*$'

关于mysql - mysql 中的正则表达式匹配失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25637469/

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