用于数据处理的文本编辑

用于数据处理的文本编辑

我有一个关于文本编辑的问题,我有一个包含输入列表的大文本文件,正如您在图片上看到该文件的示例。列表如下所示:

Input
form
jalan
ba-jalan
pem-porut#an
daun #kulu
daun#kulu
tarik-napas
tarik#napas
n-cium #bow
arau/araw
imbaw//nimbaw
dengo | nengo
dodop=am
{di} dalam
di {dalam}

我需要将它分成不同的列以便输出,如照片上所示(前缀、词根和后缀),它们之间有 - 和 # 我需要一个公式来用 - 和 # 分隔它们,或者如果有斜线 / 它应该取第一部分并忽略斜线后的单词,或者如果单词在 {} 内,它应该忽略它,我所做的是首先定义文本示例,然后运行下面的公式,正如您在图片上看到的那样,我首先定义了我的列表,就像

words = ['jalan', 'ba-jalan', 'pem-porut#an', 'daun #kulu', 'daun#kulu', 'tarik-napas', 'tarik#napas', 'n-cium #bow', 'arau/araw', 'imbaw//nimbaw', 'dengo | nengo', 'dodop=am', '{di} dalam', 'di {dalam}' ]

之后我用这个公式来分割它们

对于单词中的单词:m = re.match(r'(?:{[^-#{}/]+})?(?:([^-#{}/]+)-)?([^-#{}/]+)(?:/[^-#{}/]+)?(?:#([^-#{}/]+))?', word) if m: print(repr(m.groups())) else: print("(无匹配:%s)" % word)

结果如下

(无,'jalan',无) ('ba','jalan',无) ('pem','porut','an') (无,'daun','kulu') (无,'daun','kulu') ('tarik','napas',无) (无,'tarik','napas') ('n','cium','bow') (无,'arau',无) (无,'imbaw',无) (无,'dengo | nengo',无) (无,'dodop=am',无) (无,' dalam',无) (无,'di',无)

在此处输入图片描述它的输出仍然存在一些问题,它没有拆分相等的 = 并且我还需要在单词之间使用制表符 \t 其次我需要新行 \n 但我无法将它们添加到我的公式中,而且还有另一个问题,如果想首先定义我的列表,如何在单词周围添加引号''以及如何以简单的方式在 to 之间添加逗号 , 因为在那个例子中我添加了手册,如果我们有一个大列表,很难添加手册,有人可以帮助我吗,非常感谢。

在此处输入图片描述

相关内容