如何使用管道分割java
我必须将一个字符串分隔成一个可能包含空格的数组,例如 |玛丽亚|乔|费尔南多|| 但当在行的末尾有空格时,它将被忽略 我使用的是这个如何使用管道分割java,java,regex,Java,Regex,我必须将一个字符串分隔成一个可能包含空格的数组,例如 |玛丽亚|乔|费尔南多|| 但当在行的末尾有空格时,它将被忽略 我使用的是这个regex分割(\\\\124;”) 应该是这样的:maria,joao,fernando,null 但仍然是这样:玛丽亚、乔奥、费尔南多您只需在拆分字符串中添加两个反斜杠即可 String s = "|maria|joao|fernando||"; String [] st =s.split("\\|"); for
regex分割(\\\\124;”)
应该是这样的:maria,joao,fernando,null
但仍然是这样:
玛丽亚、乔奥、费尔南多
您只需在拆分字符串中添加两个反斜杠即可
String s = "|maria|joao|fernando||";
String [] st =s.split("\\|");
for (String string : st) {
System.out.print(string+",");
}
您可以使用:
String str = "|maria|joao|fernando||";
String[] tokens = str.replaceAll("^[|]|[|]$", "").split("[|]", -1));
//=> [maria, joao, fernando, ""]
步骤:
replaceAll
方法替换开头和结尾
,将maria | joao | fernando |
作为拆分的输入
split
方法将其拆分,第二个参数为-1
,以返回空令牌List params=Pattern
.compile(“\\\\”)
.splitAsStream(“| maria | joao | fernando | |”)
.filter(e->e.trim().length()>0)//仅删除空格或空字符串
.collect(Collectors.toList());
我为语言错误感到抱歉,我是巴西学生
List<String> params = Pattern
.compile("\\|")
.splitAsStream("|maria|joao|fernando||")
.filter(e -> e.trim().length() > 0) // Remove spaces only or empty strings
.collect(Collectors.toList());