本文介绍了管道简单拆分在java中的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在使用split with pipeline时出现问题。但是与其他角色一起使用效果很好。有什么问题请帮帮我。

am getting problem while using split with pipeline.but with other characters it works well.What am doing wrong please help me.

String s ="H|PONumber1|1|1";
String arr[] = s.split("|");
for(int i=0;i <arr.length;i++ )
  System.out.println("arr["+i+"] : "+arr[i]);

输出:

arr[0] : 
arr[1] : H
arr[2] : |
arr[3] : P
arr[4] : O
arr[5] : N
arr[6] : u
arr[7] : m
arr[8] : b
arr[9] : e
arr[10] : r
arr[11] : 1
arr[12] : |
arr[13] : 1
arr[14] : |
arr[15] : 1


推荐答案

管道被视为正则表达式的特殊字符。只需通过 \\ | 逃脱它,你就会好起来的。来自 ...

The pipe is being treated as a regex special character. Just escape it via \\| and you'll be good. From the javadoc on String.split...

如果您想要安全,请始终将您的文本传递给 Pattern.quote(stringToSplitOn) ;

If you want to be safe, always pass your text to Pattern.quote(stringToSplitOn);

这篇关于管道简单拆分在java中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-30 06:16