gpt4 book ai didi

java - Java 中以 *** 分隔符分割字符串

转载 作者:行者123 更新时间:2023-12-01 06:52:01 24 4
gpt4 key购买 nike

public class TestStringSplit {
public static void main(String[] args) {

String bal = "IND|TEST|***|Cricket|***";
String[] patterns = org.springframework.util.StringUtils.split(bal,
"***");
System.out.println("SPRING Framework String Split");
for (String pt : patterns) {
System.out.println("Pattern " + pt);
}

System.out.println("************************");

patterns = org.apache.commons.lang.StringUtils.split(bal,
"***");
System.out.println("Apache Commons Lang String Split");
for (String pt : patterns) {
System.out.println("Pattern " + pt);
}

System.out.println("************************");

patterns = bal.split("***");
System.out.println("JDK String Split");
for (String pt : patterns) {
System.out.println("Pattern " + pt);
}

}
}

以上结果为

SPRING框架字符串分割

Pattern IND|TEST|

Pattern |Cricket|***
<小时/>

Apache Commons Lang 字符串拆分

Pattern IND|TEST|

Pattern |Cricket|
<小时/>
Exception in thread "main" java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0
***
^

为什么默认的 JDK 没有给我所需的结果,而是给我异常......以及获取值的模式应该是什么

问候

最佳答案

您需要转义“*”,因为它是正则表达式中的特殊字符:

patterns = bal.split("\\*\\*\\*");

关于java - Java 中以 *** 分隔符分割字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22917358/

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