如何使用Java8从String中获取对象值

问题描述 投票:0回答:1

请建议使用java8从下面string获取“Name”和“isAvaialble”的值而不转换为数组/对象的最佳方法。

“[名称:测试,isAvaialble:false]”

java-8
1个回答
0
投票

你应该使用正则表达式来解析你的字符串,这里是示例代码

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class Main
{
    public static void main(String[] args) {
        
         String input = "[ Name:Test , isAvaialble:false]";
         
        Pattern pattern = Pattern.compile("Name:(\\w+)\\s*,\\s*isAvaialble:(\\w+)");
        Matcher matcher = pattern.matcher(input);

        if (matcher.find()) {
            String name = matcher.group(1);
            String isAvailable = matcher.group(2);

            System.out.println("Name: " + name);
            System.out.println("isAvailable: " + isAvailable);
        } else {
            System.out.println("No match found.");
        }
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.