我想标记一些称为SMILES
的化学表达式,例如[c]1ccc(C(=O)Nc2ccc(Br)cc2)cc1[N+](=O)[O-].C[NH]
。字符串中没有空格,在标记化之后,我们应该得到[c], 1, c, c, c, (, C, (, =, O, ), N, c, 2, c, c, c, (, Br, ), c, c, 2, ), c, c, 1, [N+], (, =, O, ), [O-], ., C, [NH]
,这意味着一些特殊的标记具有多个字符,例如[c]
、Br
和[N+]
,并且它们不应该被拆分。除了这些令牌之外,其他令牌只有一个字符,例如c
、(
和N
。我如何使用来自Spacy的标记器实现这一点?如果这里不需要spacy,并且只有一段python可以做到这一点,那么它也是可以接受的。任何帮助都将不胜感激
我认为这方面的正则表达式非常简单,所以
我想这是你想要的
相关问题 更多 >
编程相关推荐