繁体   English   中英

如何通过与[]一起从java中的字符串数组中删除多个标记

[英]how to remove multiple token from string array in java by split along with [ ]

如何通过与[]一起从java中的字符串数组中删除多个标记

String Order_Menu_Name= [pohe-7, puri-3];
    String [] s2=Order_Menu_Name.split("-|,");
                int j = 0;
                //out.println("s2.length "+s2.length);
                while(j<s2.length){ }

预期输出应分别为每个值。 e,g pohe 7 puri 3

您的问题不清楚。 假设您的字符串包含"pohe-7, puri-3" ,则可以使用诸如“,”或“-”或空格之类的separator将其拆分。 见下文。

String Order_Menu_Name= "[pohe-7, puri-3]"; 

从上述字符串中删除“ [”和“]”。 您可以使用Java的replace方法,如下所示:

Order_Menu_Name = Order_Menu_Name.replace("[", "");
Order_Menu_Name = Order_Menu_Name.replace("]", "");  

您可以使用与[....]相匹配的regex表达式替换其中的两行。

删除上述字符后,您可以按照以下方式分割字符串。

String[] chunks = Order_Menu_Name.split(","); 
i = 0; 
while(chunks.length) {
  System.out.println(chunks[i]); 
  i++; 
}

您可以将一两个参数传递给Java split()方法,一个是用于定义要找到的模式的regex表达式,第二个参数是limit,指定要返回的块数,请参见下文:

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

or

public String[] split(String regex)

例如

String Str = new String("Welcome-to-Stackoverflow.com");
for (String retval: Str.split("-", 3)){
    System.out.println(retval);
}

当使用分隔符“-”分割上面的Str时,您应该获得3个字符串块,如下所示:

Welcome 
to 
Stackoverflow.com 

如果您将split函数的限制限制为2而不是3,那么您将获得以下信息:

Welcome 
to-Stackoverflow.com

请注意,上面的“ to-Stckoverflow.com”将按原样返回,因为我们将块限制为2个。

暂无
暂无

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

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