Я работаю над POS-тэгером, и мне нужно читать из файла, который выглядит следующим образом:
(TOP (S (NP (DT The)
(NNP September-October)
(NN term)
(NN jury))
(AUX (VBD had))
(VP (VBN been)
(VP (VBN charged)
(PP (IN by)
(NP (NNP Fulton)
(NNP Superior)
(NNP Court)
(NNP Judge)
(NP (NNP Durwood)
(NNP Pye))))
(S (NP (-NONE- *))
(AUX (TO to))
(VP (VB investigate)
(NP (NNS reports)
(PP (IN of)
(NP (JJ possible)
(`` ``)
(NNS irregularities)
('' '')
(PP (IN in)
(NP (NP (DT the)
(ADJP (JJ hard-fought))
(NN primary))
(SBAR (WHNP (WDT which))
(S (NP (-NONE- T))
(AUX (VBD was))
(VP (VBN won)
(PP (IN by)
(NP (NNP Mayor-nominate)
(NP (NNP Ivan)
(NNP Allen)
(NNP Jr)
(. .)))))))))))))))))
(. .))
, но в виде дерева, и мне нужно преобразовать его во что-то вроде этого:
DT The NNP September-October NN term...
с использованием Python.В файле есть несколько деревьев предложений, и каждое из них должно быть напечатано в отдельной строке.
Я пробовал что-то вроде этого:
re.split(r'(?!END_OF_TEXT_UNIT)\[TOP]\w+(. .)$', text)
, и это дает мне все, что мне нужно, но каждыйPOS и слово на отдельной линии.Пожалуйста, помогите!