Я хочу выполнить запрос MySQL, чтобы получить следующий эффект:
table_column [varchar]
-----------------------
1|5|7
25
55|12
5
3&5
5|11
Я хочу надежный способ получить все значения, где 5 - полное значение.
Итак, например, если я делаю запрос REGEXP для числа 5 в верхней таблице, я бы хотел получить все строки, кроме, содержащие "25" и "55 | 12" .
Это лучшее, что я придумал до сих пор:
[^[:digit:]]5[^[:digit:]] | [^[:digit:]]5 | 5[^[:digit:]] | ^5$
есть более короткий путь?
Спасибо.
Попробуйте использовать границы слов:
[[:<:]]5[[:>:]]
^.*[^[:digit:]]*5[^[:digit:]]*.*$
55
(имейте в виду, что оператор *
может соответствовать 0 элемента ...).
\b
, и я не помню, имел ли он возможность ограничения слов. Я восстановил его и обновил с соответствующими отметками. ;)