。それはそうですか、またはそのテキストはサービスの生の応答ですか?それはあなたがGroovyのXmlSlurperで簡単に解析できるXMLの場合:
def input = '<root TX="0000000000108000001830001" FI="" OS="8" CI="QU01SF1S2032" AW="SSS" SA="1525 Windward Concourse"></root>'
def xml = new XmlSlurper().parseText(input)
def map = xml.attributes()
それはXMLではない場合map
変数は[CI:QU01SF1S2032, AW:SSS, TX:0000000000108000001830001, OS:8, FI:, SA:1525 Windward Concourse]
だろう、あなたはziesemer's answerに従うと、正規表現を使用することができます。 Map
を生成し、彼の答えのgroovierバージョンは次のようになります。
def input = 'TX="0000000000108000001830001" FI="" OS="8" CI="QU01SF1S2032" AW="SSS" SA="1525 Windward Concourse"'
def match = input =~ /(\w+)="([^"]*)"/
def map = [:]
match.each {
map[it[1]] = it[2]
}
map
の結果は前と同じになります。
さて、一重引用符を使用してください。それはGroovyとタグ付けされています:) –
@DaveNewton - 我々はOPのための練習としてそれを残します。 :-) – ziesemer
@ziesemer - +1。しかし、二重引用符で印刷された「=」の後には、「0000000000108000001830001」と表示されます。 –