我有一个字符串
String value ="Caused by:null pointer exception Caused by
: BeanCreationException.. WARNING: its just a warning..";
我想在关键字&#34之后拆分String;引起:"和"警告:"所以我输出像
非常感谢任何帮助。
答案 0 :(得分:3)
您可以使用Caused by:
或WARNING:
作为分隔符
<强>代码强>:
String value ="Caused by:null pointer exception Caused by"
+ ": BeanCreationException.. WARNING: its just a warning..";
String[] sp = value.split("Caused by:|WARNING:");
Stream.of(sp).forEach(s -> System.out.println(s));
<强>输出强>:
null pointer exception
BeanCreationException..
its just a warning..
注意:代码的某些部分位于 Java 8
答案 1 :(得分:1)
尝试使用split()
方法
String str="Caused by:null pointer exception Caused by: BeanCreationException.. WARNING: its just a warning..";
String split[]=str.split("Caused by");
split()
将返回包含拆分trem之前和之后的单词的数组
答案 2 :(得分:1)
您希望将多个子字符串视为分隔符。所以我的方法是将我的所有分隔符子串转换为公共分隔符,然后用该分隔符将其拆分。
String value ="Caused by:null pointer exception Caused by BeanCreationException.. WARNING: its just a warning..";
//Transforming substrings to a common separator
value = value.replace("Caused by:", "||");
value = value.replace("WARNING:", "||");
//Just splitting the string by separator
String valueArray = value.split("||");
答案 3 :(得分:1)
您可以在#split
方法中使用|
( OR
)
value.split("Caused by:|WARNING:")
注意:如果String
以Caused by:
或WARNING:
开头,它会在数组中为第一个元素设置为空,所以请小心。
答案 4 :(得分:0)
您可以使用String.split(REQUIRED_SEPARATOR)
或new StringTokenizer(inputString, "REQUIRED_SEPARATOR")
使用StringTokenizer时,您可以使用hasMoreElements()
遍历令牌并使用nextToken()
来访问令牌。
答案 5 :(得分:0)
尝试使用String.indexOf("Caused by:")
查找所有Caused by:
然后String.indexOf("WARNING:")
,以查找所有警告。