내가있을 수 있습니다 또는 요소가 요소 <EName>
어떻게 수율 루프
예 내에있는 <Popular>
라고하지 수있는 XML 파일을 구문 분석 당겨 해요위한 스칼라에서 기존 값을 처리하지 않습니다
<Info>
<Enterprise>
<EName>
<Legal>Cool company</Legal>
</EName>
</Enterprise>
<Enterprise>
<EName>
<Legal>Cool company2</Legal>
<Popular>The company 2</Popular>
</EName>
</Enterprise>
</Info>
나는이 같은 스칼라 스케일 XML를 사용
val Info = NoNamespaceQName("Info")
val Enterprise = NoNamespaceQName("Enterprise")
val EName = NoNamespaceQName("EName")
val Legal = NoNamespaceQName("Legal")
val Popular = NoNamespaceQName("Popular")
val EnterprisePath = List(Info, Enterprise)
val itr = iterate(EnterprisePath, xml)
for {
enterprise <- itr
enterpriseName <- enterprise \* EName \* Legal
enterprisePopularName <- enterprise \* EName \* Popular
} {
// Do fun stuff
Logger.info("enterprise: "+enterpriseName + " "+enterprisePopularName)
}
Popular 요소가 존재하지 않으면 for 문이 수행되지 않고 yield 문이 실행되지 않습니다. 내가 좋아하는 것이 무엇
먼저 요소를 확인하고 인기있는 요소가 비어있는 경우, 빈 문자열
뭔가 등에 enterprisePopularName을 설정
<- if((enterprise \* EName \* Popular)) enterprise \* EName \* Popular else ""
하지만 그것을 알아낼 수 없습니다 . 나는 그것이 scala newbie이기 때문에 그것이라고 생각한다.
은'\ *'옵션을 생산 하는가? 나는'Seq'를 기대합니다. – Impredicative
감사합니다. 내 대답을 편집했습니다. – drexin
Nice - 이전에'padTo '를 보지 못했습니다. – Impredicative