interface CanParseSyntax<T> : CanAnalyzeProperty<T>
구문분석을 수행하는 Interface입니다. 매개변수 T는 각 분석기에서 문장을 분석한 결과물의 중간 형태, 즉 분석기의 입력 형태입니다.
구문구조 분석은 문장의 구성요소들(어절, 구, 절)이 이루는 문법적 구조를 분석하는 방법입니다. 예) '나는 밥을 먹었고, 영희는 짐을 쌌다'라는 문장에는 2개의 절이 있습니다
아래를 참고해보세요.
분석기 Parser가 CanParseSyntax를 상속받았다면,
// 문장에서 바로 분석할 때
val parser = Parser()
val sentences = parser.analyze("문장 2개입니다. 결과는 목록이 됩니다.") // 또는 parser("문장 2개입니다. 결과는 목록이 됩니다.")
// 타 분석기에서 분석한 다음 이어서 분석할 때
val taggedSentence: Sentence = ...
val sentence = parser.analyze(taggedSentence) // 또는 parser(taggedSentence)
val taggedSentList: List<Sentence> = ...
val sentences = parser.analyze(taggedSentList) // 또는 parser(taggedSentList)
import kr.bydelta.koala.Implicits._
// 문장에서 바로 분석할 때
val parser = new Parser()
val sentences = parser.analyze("문장 2개입니다. 결과는 목록이 됩니다.") // 또는 parser("문장 2개입니다. 결과는 목록이 됩니다.")
// 타 분석기에서 분석한 다음 이어서 분석할 때
val taggedSentence: Sentence = ...
val sentence = parser.analyze(taggedSentence) // 또는 parser(taggedSentence)
val taggedSentList: java.util.List[Sentence] = ...
val sentences = parser.analyze(taggedSentList) // 또는 parser(taggedSentList)
// 문장에서 바로 분석할 때
Parser parser = Parser()
List<Sentence> sentences = parser.analyze("문장 2개입니다. 결과는 목록이 됩니다.") // 또는 parser.invoke("문장 2개입니다. 결과는 목록이 됩니다.")
// 타 분석기에서 분석한 다음 이어서 분석할 때
Sentence taggedSentence = ...
Sentence sentence = parser.analyze(taggedSentence) // 또는 parser.invoke(taggedSentence)
List<Sentence> taggedSentList = ...
List<Sentence> sentences = parser.analyze(taggedSentList) // 또는 parser.invoke(taggedSentList)
Since
2.0.0