JSON dizesinden bir anahtar sözcük çıkarmaya çalışıyorum ve sözcüğün içeriğini al. Ben (örn Pai bir kelime sağlamak istiyoruzRegex: boşluklu aksanlı harfler olsun
Python
re.findall(regex, string)
:
JSON
{"1" : "Na casa de meu Pai há muitos aposentos; se não fosse assim, eu lhes teria dito. Vou preparar-lhes lugar."}
Şu anda, benim Python kodu: My dize benziyor) ve anahtar kelimeden önce ve sonra kelimeleri alın . Komut dizim, anahtar kelimenin tüm yinelemelerini sayacak ve içeriksel sözcüklerin bir listesini oluşturacaktır.
Sorunum: aksanlı harfleri whitespac, virgül, nokta vb. Ile nasıl alabilirim? En iyi yaklaşım nedir: İstediğiniz karakterleri listeleyebilir veya istenmeyenleri hariç tutabilirsiniz? Bir şey gibi:
import nltk
text = 'Na casa de meu Pai há muitos aposentos; se não fosse assim, eu lhes teria dito. Vou preparar-lhes lugar.'
tokens = nltk.word_tokenize(text)
c = nltk.ConcordanceIndex(tokens, key=lambda s: s.lower())
result = []
for offset in c.offsets('Pai'):
result += tokens[offset - 2: offset]
result += tokens[offset + 1: offset + 3]
print(result)
Baskılar ['de', 'meu', 'há', 'muitos']
:
([^\"]+)Pai([^\"$]+)
En iyi yaklaşım yerine bir JSON çözümleyici ve dize işlevlerini kullanmak olacaktır. – Jan