Java 仅从字符串中提取字符并将其存储在另一个字符串中
比如说,我有一根绳子Java 仅从字符串中提取字符并将其存储在另一个字符串中,java,regex,string,Java,Regex,String,比如说,我有一根绳子 String str = "1.) Java is fun. play with 12" 我希望)之后的所有内容都存储为单独的字符串。最好的方法是什么?我尝试在“””上拆分字符串: 但它正在给予: java.util.regex.PatternSyntaxException:不匹配的结束“')”` 样本输入: String str = "1.) JAVA is fun.Play with 12" 样本输出: String result = "JAVA is fun.Pl
String str = "1.) Java is fun. play with 12"
我希望)
之后的所有内容都存储为单独的字符串。最好的方法是什么?我尝试在“”
”上拆分字符串:
但它正在给予:
java.util.regex.PatternSyntaxException:不匹配的结束“')”`
样本输入:
String str = "1.) JAVA is fun.Play with 12"
样本输出:
String result = "JAVA is fun.Play with 12"
试着这样分开
public static void main(String args[]) {
String s = "1.) Java is fun. play with 12";
String[] r = s.split("\\)");
for (int i = 0; i<r.length; i++){
System.out.println(""+r[i]);
}
}
publicstaticvoidmain(字符串参数[]){
String s=“1.)Java很有趣。玩12”;
字符串[]r=s.split(\\)”;
for(int i=0;i采用正则表达式作为参数。)
是正则表达式的特殊字符,因此需要使用\
对其进行转义。因为在Java中\
也需要转义,所以需要使用\\)
进行拆分
请注意,在这段代码中,我为split
调用指定了2个限制。这意味着它将只将字符串拆分为2部分。这是为了解决您要提取的字符串可能还包含)
,例如输入“1。)Java很有趣:)。玩12“
作为旁注,在这种情况下,使用子字符串
比使用拆分
更容易(也许更快),如下所示:
String str = "1.) Java is fun. play with 12";
String result = str.substring(str.indexOf(')') + 1);
System.out.println(result);
String str= "1.) JAVA is fun.Play with 12";
String separateString;
int index = str.indexOf(')');
if (index >= 0) {
separateString = str.substring(index);
}
我会这样做:
String str = "1.) Java is fun. play with 12";
String result = str.substring(str.indexOf(')') + 1);
System.out.println(result);
String str= "1.) JAVA is fun.Play with 12";
String separateString;
int index = str.indexOf(')');
if (index >= 0) {
separateString = str.substring(index);
}
String det[]=str.split(“)”;它成功了。My bad:P将在几分钟内接受答案:)