<p>假设我有这样的句子:</p>
<pre><code>His/O name/O is/O Petter/Name Jack/Name and/O his/O brother/O name/O is/O
Jonas/Name Van/Name Dame/Name
</code></pre>
<p>我怎样才能得到这样的结果:</p>
<pre><code>Petter Jack, Jonas Van Dame.
</code></pre>
<p>到目前为止,我已经试过了,但它仍然只是两个词:</p>
<pre><code>import re
pattern = re.compile(r"\w+\/Name)
sent = sentence.split()
for i , w in sent:
if pattern.match(sent[i]) != None:
if pattern.match(sent[i+1]) != None:
#....
#join sent[i] and sent[i+1] element
#....
</code></pre>
<p>试试这个</p>
<pre><code>pattern = re.compile(r"((\w+\/Name\s*)+)")
names = pattern.findall(your_string)
for name in names:
print(''.join(name[0].split('/Name')))
</code></pre>