java开发过程中,报错Dangling meta character '*' near index 0,解决办法

1、split方法转化字符串为数组:

     String[] strPicArr = map.get("hw_pic").toString().split("*");

     报错:

     java.util.regex.PatternSyntaxException: Dangling meta character '*' near index 0

    



2、经调试跟踪发现字符串中带有“*”时,用“*”分隔字符串成数组是不正确的,正确的写法是:

     String[] strPicArr = map.get("hw_pic").toString().split("\*");

     修改后,运行正常。



3、因为+、*、|、等符号在正则表达示中有相应的不同意义,所以在使用时要进行转义处理。

     这里同样可以用

     String[] strPicArr = map.get("hw_pic").toString().split("[*]");

来自:https://blog.csdn.net/zhouzhiwengang/article/details/53493810

String str = "A+B+C";
String[] array = str.split("\+");
// 或者 String[] array = str.split("[+]");

// 处理连续特殊字段需要单独处理
String str1 = "A++B++C"
String[] array1 = str1.split("\+\+");
// 或者 String[] array = str.split("[+]");

来自:https://blog.csdn.net/never_tears/article/details/76619027

原文地址:https://www.cnblogs.com/lanliying/p/9576851.html