为什么我会收到此错误。
后视模式匹配必须在索引 16 附近有一个有界的最大长度:
encodedString.split("(?<=\\G.{524288})")
我正在尝试将非常长的字符串分成 524288 个字符
为什么我会收到此错误。
后视模式匹配必须在索引 16 附近有一个有界的最大长度:
encodedString.split("(?<=\\G.{524288})")
我正在尝试将非常长的字符串分成 524288 个字符
为工作使用正确的工具。正则表达式不需要将 a 拆分String
为大小相等的子字符串:
String s;// your string to split
int size;// the size of the substrings (last String may be shorter)
String[] array=new String[(s.length()+size-1)/size];
for(int ix=0, pos=0; ix<array.length; ix++, pos+=size)
array[ix]=s.substring(pos, Math.min(s.length(), pos+size));
你需要\\
而不是\
. 尝试这个:
split("(?<=\\G.{524288})")