我已经整理出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