您好,请参考此链接Replace a string using dictionary - regex
我正在尝试使用此方法,以便能够使用字典从用户输入的字符串中替换出来,但不区分大小写。
有问题的解决方案如下:
pattern = re.compile(r'(?<!\w)(' + '|'.join(re.escape(key) for key in dictionary.keys()) + r')(?!\w)')
result = pattern.sub(lambda x: dictionary[x.group()], myText)
这适用于对字典进行区分大小写的查找,但是每次我要替换时都使用结尾处的re.IGNORECASE方法和“ Case Insenstive Dictionary”(在此处{{3 }}) 方法。无论哪种方式,当我使用大写不正确的单词时,都会收到“ Invalid Key”错误。