簡體   English   中英

從json轉換為十進制

[英]Conversion from json to decimal

我有一個JSON字符串。

{"bounds": {"south west":{ "lng":74.1475868, "lat": 31.366689}, "northeast": { "lng":74.85623 ,"lat": 32.5698746}}

我想使用Java中的正則表達式獲取帶有十進制值的整數。

JSON不是常規語言,因此無法通過普通正則表達式進行解析(並且使用非常規擴展的正則表達式進行解析非常復雜)。 而是使用Java JSON庫

不要使用正則表達式來解析結構化文檔。 有更好的方法可以做到這一點。 現在,如果有人強迫您使用正則表達式通過將槍對准您的頭部來完成此工作,則可以使用以下命令:

try {
    Pattern regex = Pattern.compile("[-+]?\\b[0-9]*\\.?[0-9]+\\b");
    Matcher regexMatcher = regex.matcher(subjectString);
    while (regexMatcher.find()) {
        // matched text: regexMatcher.group()
        // match start: regexMatcher.start()
        // match end: regexMatcher.end()
    } 
} catch (PatternSyntaxException ex) {
    // Syntax error in the regular expression
}

這將捕獲所有具有整數或非負數或正數以及可選整數部分的數字。

請注意,它將不會與科學計數法匹配數字!

暫無
暫無

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

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