2011-11-20 14 views
6

Wyrażenia regularne analizatora parterów NLTK mogą być zgodne z tagami POS, ale czy mogą również dopasowywać określone słowa?
Załóżmy więc, że chcę porysować dowolną strukturę za pomocą rzeczownika, po której następuje czasownik "left" (wywołaj ten wzorzec L). Na przykład zdanie "pies \ DT \ NN w lewo \ VB" powinno być porcjowane jako
(S (DT) (L (pies NN) (VB w lewo))), ale zdanie "pies \ DT" NN spać \ VB "nie byłby w ogóle ugryziony.Dopasowywanie słów za pomocą parsera porcji NLTK

Nie udało mi się znaleźć żadnej dokumentacji dotyczącej składni regex fragmentów, a wszystkie przykłady, które widziałem, pasują tylko do tagów POS.

Odpowiedz

1

miałem podobny problem i po zdając sobie sprawę, że wzór regex zbada tylko znaczniki, zmieniłem tag na kawałku byłem zainteresowany.

Na przykład, starałem się dopasować nazwę i wersję i używanie reguły kawałka takiej jak \ NNP + \ CD działało dla "Internet Explorer 8.0", ale nie działało w "Internet Explorer 8.0 SP2", gdzie oznaczało SP2 jako NNP.

Być może mógłbym wyszkolić tagger POS, ale zdecydowałem się zamiast tego zmienić tag na SP, a następnie reguła kawałka, taka jak \ NNP + \ CD \ SP *, będzie pasować do obu przykładów.

+0

Czy możesz podać przykład wzdłuż linii: chunkGram = r "" "Chunk: {? * * + }" "" – ProfVersaggi

Powiązane problemy