gpt4 book ai didi

mysql - 匹配最佳正则表达式

转载 作者:行者123 更新时间:2023-11-29 07:09:52 25 4
gpt4 key购买 nike

在下表中,我如何匹配“FG2-4G4T5”,以便第一个返回的行是最佳匹配(即“FG2-4G”) ?

part_match
^FG2|^FF2|^FF3-S|^FF4-GR
^FG2-4G
^FG2
FG2-RGST

以下查询在这种情况下不起作用,因为“^FG2|^FF2|^FF3-S|^FF4-GR”的长度更长:

SELECT * FROM parts WHERE 'FG2-4G4T5' REGEXP part_match ORDER BY length(part_match) DEC

任何帮助将不胜感激。提前致谢。

最佳答案

有时 K.I.S.S.解决方案是最好的。保留另一列列出与模式匹配的文本的实际长度?

part_match           part_match_length
======================================
^FG2|^FF2|^FF3|^FF4 3
^FG2-4G 6
^FG2 3

因此...

SELECT * FROM parts
WHERE 'FG2-4G4T5' REGEXP part_match
ORDER BY part_match_length DEC

从技术上讲,第二列甚至不一定是长度 - 只是某种表示给定模式提供的匹配程度的指示。

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

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