我正在尝试根据模式序列从句子中提取一个块。
import re
import spacy
nlp = spacy.load('en')
s = "His name is Robinson."
doc = nlp(s)
pattern = re.compile(r'(<PRP$|POS>+<RB.?>)*(<JJ.?>)*(<NN.?|VBG|VBN>+<VB.?
|MD|RP>+)')
for chunk in doc:
if(re.search(pattern,chunk.tag_)):
print(chunk, chunk.tag_)
通过此获取的块应该是“他的名字是”
我该如何实现?
答案 0 :(得分:0)
尝试以下代码行,
re.search(r“他的名字是(。*)”,s).group(1)
要将其更改为模式序列,
pattern =“他的名字是(。*)” re.search(pattern,s).group(1)