0
스파크 스트리밍을 통해 읽는 XML에서 네임 스페이스 정보를 필터링하려고합니다. 아래는 샘플 XML입니다. 이것은 내가 시도하는 코드입니다. 그것은 XML에서 모든 "ns : 0", "ns : 1"을 필터링해야합니다. 스파크 스트리밍 때문에 xml은 rdd로 읽혀집니다.Spark Scala에서 네임 스페이스 xml 필터링 필터링
val message_filter = message.filter(x => x.matches("([n][s][0-9]:)+")))
<?xml version="1.0"?>
<Period>
<AllContacts>
<Entry>
<ns0:entity-Person>
<ns0:CellPhone>3095550101</ns0:CellPhone>
<ns0:FirstName>Brrzzz</ns0:FirstName>
<ns0:LastName>Grbbs</ns0:LastName>
</ns0:entity-Person>
<ns0:PrimaryPhone>mobile</ns0:PrimaryPhone>
</Entry>
</AllContacts>
<State>TX</State>
</Period>
원하는 형식 : 정규식 이런 식으로 뭔가 보일 것보다 x.matches
는 정규 표현식을 받아
<?xml version="1.0"?>
<Period>
<AllContacts>
<Entry>
<entity-Person>
<CellPhone>3095550101</CellPhone>
<FirstName>Brrzzz</FirstName>
<LastName>Grbbs</LastName>
</entity-Person>
<PrimaryPhone>mobile</PrimaryPhone>
</Entry>
</AllContacts>
<State>TX</State>
</Period>