今天用到了Java中的Split函数,要以“|”作为分割符,当输入竖线时,发现出错。
原因是竖线 | 在正则中是特殊字符,需要转义,也就是split(“\|”),但实际在java中使用时,\又是java的特殊字符,需要转义,最终变成了split("\\|")。
split里面有两个参数,其中一个是“limit”,表示匹配参数的个数,另一就是匹配参数,split不是简单的匹配,里面输入的是“正则表达式”,所以问题就在这个正则表达式上了。
String splitStr = "\\{\\|\\}";// 分隔符是:{|}String[] subContent = message.split(splitStr);