Vaerys_Dawn

Another Regex related issue where the is no regex involved?

Nov 4th, 2016
162
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.08 KB | None | 0 0
  1. //Error
  2. java.lang.reflect.InvocationTargetException
  3.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  4.     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  5.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  6.     at java.lang.reflect.Method.invoke(Method.java:498)
  7.     at Handlers.MessageHandler.handleCommand(MessageHandler.java:259)
  8.     at Handlers.MessageHandler.<init>(MessageHandler.java:85)
  9.     at Listeners.AnnotationListener.onMessageRecivedEvent(AnnotationListener.java:142)
  10.     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  11.     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
  12.     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
  13.     at java.lang.reflect.Method.invoke(Method.java:498)
  14.     at sx.blah.discord.api.events.EventDispatcher.lambda$null$8(EventDispatcher.java:282)
  15.     at java.util.concurrent.CopyOnWriteArrayList.forEach(CopyOnWriteArrayList.java:890)
  16.     at sx.blah.discord.api.events.EventDispatcher.lambda$null$9(EventDispatcher.java:280)
  17.     at java.util.concurrent.ConcurrentHashMap.forEach(ConcurrentHashMap.java:1597)
  18.     at sx.blah.discord.api.events.EventDispatcher.lambda$null$10(EventDispatcher.java:279)
  19.     at java.util.stream.ForEachOps$ForEachOp$OfRef.accept(ForEachOps.java:184)
  20.     at java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:193)
  21.     at java.util.stream.ReferencePipeline$2$1.accept(ReferencePipeline.java:175)
  22.     at java.util.concurrent.ConcurrentHashMap$EntrySpliterator.forEachRemaining(ConcurrentHashMap.java:3606)
  23.     at java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:481)
  24.     at java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:471)
  25.     at java.util.stream.ForEachOps$ForEachOp.evaluateSequential(ForEachOps.java:151)
  26.     at java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential(ForEachOps.java:174)
  27.     at java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
  28.     at java.util.stream.ReferencePipeline.forEach(ReferencePipeline.java:418)
  29.     at sx.blah.discord.api.events.EventDispatcher.lambda$dispatch$15(EventDispatcher.java:278)
  30.     at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
  31.     at java.util.concurrent.FutureTask.run(FutureTask.java:266)
  32.     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
  33.     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
  34.     at java.lang.Thread.run(Thread.java:745)
  35. Caused by: java.util.regex.PatternSyntaxException: Illegal repetition near index 6
  36. #image#{Welcome_Icon.png}
  37.       ^
  38.     at java.util.regex.Pattern.error(Pattern.java:1955)
  39.     at java.util.regex.Pattern.closure(Pattern.java:3157)
  40.     at java.util.regex.Pattern.sequence(Pattern.java:2134)
  41.     at java.util.regex.Pattern.expr(Pattern.java:1996)
  42.     at java.util.regex.Pattern.compile(Pattern.java:1696)
  43.     at java.util.regex.Pattern.<init>(Pattern.java:1351)
  44.     at java.util.regex.Pattern.compile(Pattern.java:1028)
  45.     at java.lang.String.split(String.java:2380)
  46.     at java.lang.String.split(String.java:2422)
  47.     at Handlers.InfoHandler.updateChannel(InfoHandler.java:55)
  48.     at Handlers.InfoHandler.<init>(InfoHandler.java:31)
  49.     at Handlers.MessageHandler.updateInfo(MessageHandler.java:686)
  50.     ... 32 more
  51.  
  52. //Code
  53.     private void updateChannel() {
  54.        // Utility.deleteMessage(channel.getMessages());
  55.         StringBuilder builder = new StringBuilder();
  56.         for (String s: infoContents) {
  57.             if (!s.startsWith("//")){
  58.                 builder.append(s + "\n");
  59.             }
  60.         }
  61.         infoContents = new ArrayList<>(Arrays.asList(doTextTags(builder.toString()).split("\n")));
  62.         builder.delete(0,builder.length());
  63.         String imagePrefix = "#image#{";
  64.         String imageSuffix = "}";
  65.         String lastAttempt;
  66.         for (String s: infoContents){
  67.             if ((s + builder.toString()).length() > 2000){
  68.                 Utility.sendMessage(builder.toString(),channel);
  69.             }
  70.             if (s.contains(imagePrefix)){
  71.                 do {
  72.                     lastAttempt = s;
  73.                     String image = StringUtils.substringBetween(s,imagePrefix,imageSuffix);
  74.                     String contentsToSend = s.split(imagePrefix + image + imageSuffix)[0];  //error occurs here...
  75.                     if (contentsToSend != null || !contentsToSend.equals("")){
  76.                         builder.append(contentsToSend);
  77.                     }
  78.                     Utility.sendMessage(builder.toString(),channel);
  79.                     s = s.replace(contentsToSend + imagePrefix + image + imageSuffix,"");
  80.                     Utility.sendFile("",channel,new File(Utility.getGuildImageDir(guild.getID())+ image));
  81.                 }while (s.contains(imagePrefix) && !lastAttempt.equals(s));
  82.             }
  83.         }
  84.     }
  85.  
  86. //content trying to parse
  87. "#image#{Welcome_Icon.png}
  88. #image#{Welcome_Message.png}
  89. We are a fairly new Discord for a fairly old community and as such
  90. the admins here try our hardest to make this Discord the best it
  91. can be so we hope that you enjoy your stay here."
Advertisement
Add Comment
Please, Sign In to add comment