Case Insesnitve字符串使用字典替换-regex

时间:2019-03-07 13:26:07

标签: regex dictionary str-replace case-insensitive

您好,请参考此链接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”错误。

0 个答案:

没有答案