簡體   English   中英

我如何解析給定的字符串?

[英]How can i parse the given string?

嗨,大家好,我已經得到了一個解析字符串的任務,該字符串將來自服務器。

該字符串如下所示:

<first name=$Jon$ last name=$Doe$/><first name=$Doe$ last name=$Jon$/><first name=$r$ last name=$k$/>

所需的輸出是:

first name: Jon
last name: Doe
-------------------
first name: Doe
last name: Jon
-------------------
first name: r
last name: k
-------------------

key: value

我已經完成了一些簡單的文本解析,其中包括一個簡單的定界符,例如$或%。 但是在這種情況下,我不了解如何解析文本。 您的幫助將非常有幫助。

將服務器中xml字符串中的$替換為“,將其加載為xml文檔,使用XPath或其他機制解析您所需的信息

可以有多種方法達成解決方案

  1. 可以將XSLT與Java一起使用。 (Java提供了諸如TransformerFactory,Transformer等的API。)
  2. 可以像日食一樣在IDE中使用XSLT。 提供了幾個插件。

可以查看此www.vogella.com/articles/XSLT/article.html

  1. 可以使用Unix腳本執行相同的操作。

    如何使用Unix Shell腳本將xml文件轉換為屬性文件

它不是解決問題的確切解決方案,而是可以嘗試的解決方案。 同樣,可以有許多其他方法來確保。

        Matcher keys = Pattern.compile("[<\\s)](.*?)[=]").matcher(string);
        Matcher values = Pattern.compile("[$](.*?)[$]").matcher(string);
        while(keys.find() && values.find()) {
            System.out.println(keys.group(1)+" : "+values.group(1));
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM