繁体   English   中英

字符串上的split()方法不起作用

[英]split() method on string not working

我想分割一个包含+的字符串,即时消息在String对象上使用split()为:但它显示异常。

class StringTest 
{
    public static void main(String[] args) 
    {
        String val= "004+0345564";
        String arr[]=val.split("+");
        for(int i=0;i<=arr.length-1;i++){
            System.out.println(arr[i]);
        }
    }
}

String.split正则表达式作为其参数。 正则表达式中的+具有特殊含义。 (以前的一个或多个)。

如果要使用文字+ ,则需要使用\\\\+对其进行转义 (正则表达式语法为\\+但是您需要在Java中使用第二个反斜杠对反斜杠本身进行转义)。

String arr[] = val.split("\\+");

代替

String arr[]=val.split("+");

拆分使用正则表达式。 您需要逃跑+

String arr[]=val.split("\\+")
String arr[] = val.split("\\+");

尝试这个

class StringTest 
{
    public static void main(String[] args) 
    {
        String val= "004+0345564";
        String arr[]=val.split("\\+");
        for(int i=0;i<=arr.length-1;i++){
            System.out.println(arr[i]);
        }
    }
}

您需要使用

    String arr[] = val.split("\\+");

代替

    String arr[]=val.split("+");

split方法将正则表达式作为输入。 您也可以引用String#split进行确认。

实际语法是

public String[] split(String regex, int limit)

//or

public String[] split(String regex)

因此,使用下面的一个。

String arr[] = val.split("\\+",0);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM