gpt4 book ai didi

java - 在Java中解析字符串的特定元素

转载 作者:行者123 更新时间:2023-12-02 08:10:30 26 4
gpt4 key购买 nike

我想从字符串表达式中读取对象。例如:

我有以下字符串:

(3:2,1) 

(3:null,1)

现在我想读Object1=3;对象2=2; Object3=1

对象1=3;对象2=空;对象3=1

如何用 Java 读取它。

最佳答案

我通常不太喜欢正则表达式,但这是一个完美的例子,说明正则表达式的正确应用比其他基于字符串操作的解决方案更简单,最重要的是更容易维护。

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

public class Parser
{
public static void main(final String[] args)
{
final String s1 = "(3:2,1)";
final String s2 = "(3:null,1)";
final Pattern p = Pattern.compile("\\((\\d+):(\\d+|null),(\\d+)\\)");
final Matcher m1 = p.matcher(s1);
m1.matches();
System.out.format("Object1=%s; Object2=%s; Object3=%s", m1.group(1), m1.group(2), m1.group(3));
System.out.println();
final Matcher m2 = p.matcher(s2);
m2.matches();
System.out.format("Object1=%s; Object2=%s; Object3=%s", m2.group(1), m2.group(2), m2.group(3));
}
}

根据您的要求,预期输出如下所示

Object1=3; Object2=2; Object3=1
Object1=3; Object2=null; Object3=1

关于java - 在Java中解析字符串的特定元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7518276/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com