这是我正在尝试使用用户替换器的代码,但仍然出现错误,请问好吗?这是我的代码:
import nltk
from replacer import RegexpReplacer
import sys
replacer = RegexpReplacer()
replacer.replace("Don't hesitate to ask questions")
print(replacer.replace("She must've gone to the market but she didn't go"))
这是我的错误:
ImportError:无法导入名称'RegexpReplacer'
答案 0 :(得分:1)
首先,尝试pip install replacer
并检查。如果不起作用,请从代码中删除from replacer import RegexpReplacer
,因为这意味着您无法导入它。
您可以查看类似的问题here
我希望您可以通过查看给定的问题来得到答案
答案 1 :(得分:1)
您得到了ImportError: cannot import name 'RegexpReplacer'
,因为替换程序中没有名为RegexpReplacer的模块。而是使用以下代码创建一个名为RegexpReplacer的类:
import re
replacement_patterns = [
(r'don\'t', 'do not'),
(r'didn\'t', 'did not'),
(r'can\'t', 'cannot')
]
class RegexpReplacer(object):
def __init__(self, patterns=replacement_patterns):
self.patterns = [(re.compile(regex), repl) for (regex, repl) in patterns]
def replace(self, text):
s = text
for (pattern, repl) in self.patterns:
s = re.sub(pattern, repl, s)
return s
replacer=RegexpReplacer()
replacer.replace("Don't hesitate to ask questions.")
print(replacer.replace("She must've gone to the market but she didn't go."))
输出:
She must've gone to the market but she did not go.
当您在replacer.replace()
中尝试使用带有不同字符串的代码时,其中一些包含不包含,没有包含或不能包含,其中一些不包含这三个单词中的任何一个,不要,不是和不能替换为不要,不要和不能,并且所有其他字符串都不会替换为其他字符串。