我有以下字符串
The|DT|I-MISC Oxford|NNP|I-MISC Companion|NNP|I-MISC to|TO|I-MISC Philosophy|NNP|I-MISC says|VBZ|O ,|,|O "|LQU|O there|EX|O is|VBZ|O no|DT|O single|JJ|O defining|VBG|O position|NN|O that|IN|O all|DT|O anarchists|NNS|O hold|VBP|O ,|,|O and|CC|O those|DT|O considered|VBN|O anarchists|NNS|O at|IN|O best|JJS|O share|NN|O a|DT|O certain|JJ|O family|NN|O resemblance|NN|O .|.|O "|RQU|O In|IN|O the|DT|O
我想得到每三个的第一个和最后一个项目。所以对于| DT | I-MISC,我想要(The,I-MISC)。 这是我的实现,我想知道是否有更好的和更稳定的。你知道吗
#STRAT 2: get first and third. this seems more stable
pat = r'((?<= ).+?(?=\|))'
nerpat = r'(?<=[A-Z]\|).+?(?= )'
print zip(re.findall(pat, y), re.findall(nerpat, y))
我的模式中的错误包括:下面的NNP | I-ORG。你知道吗
('consequently', 'O'), ('refrain', 'I-ORG'), ('from', 'I-ORG'), ('committing', 'I-ORG'), ('to', 'I-ORG'), ('any', 'O'), ('particular', 'NNP|I-ORG'), ('method', 'O'),
与本节正文相关:
,|,|O whereas|IN|O anarchists|NNS|O must|MD|O always|RB|O have|VB|O anarchy|NN|O as|IN|O their|PRP$|O end|NN|O and|CC|O consequently|RB|O refrain|VB|O from|IN|O committing|VBG|O to|TO|O any|DT|O particular|JJ|O method|NN|O of|IN|O achieving|VBG|O it|PRP|O .|.|O
获取匹配的组表单索引1和索引2,以获取每个三元组的第一项和最后一项
这是online demo
注意:添加
\s
以匹配任何空格字符[\r\n\t\f ]
,如以下注释所示。你知道吗示例代码:
图案说明:
阅读更多关于
您可以使用^{} 拆分字符串:
我喜欢的另一个方法是使用^{} :
相关问题 更多 >
编程相关推荐