我已经整理出MySQL中的一些位置。我可以在Python上做到这一点(我比MySQL更了解),但我会推荐MySQL解决方案。
我想过滤一些位置作为示例:

    "        belfast   " - matches - OK
    " .. .,,,,.belfast  "- matches - OK
    "Belfast"-matches - OK
    "BELFAST" -matches - OK
    "UK-BELFAST" does not match- OK
    "Belfast, London" or "        Belfast, anything" should not match but matches for me - ERROR


。如何避免匹配“伦敦贝尔法斯特”?
请帮忙。谢谢。
码:

case insensitive

^([^0-9a-zA-Z]*belfast[^0-9a-zA-Z]*)


我想在Python正则表达式或MySQL(推荐)中使用它。

最佳答案

此带有不敏感选项的正则表达式尊重您的用例:.*belfast\s*$

例如:

import re
p = re.compile(r'.*belfast\s*$', re.IGNORECASE)
str = 'Belfast, London'

print(re.search(regex, str))
# output : None

08-15 16:13