java - 在 Java 中,什么是悬空元字符以及如何纠正此错误?

标签 java

public class StringMerger {
public static boolean isMerge(String s, String part1, String part2) {
       for (int i = 0; i < part1.length(); i++)
           {
               s = s.replaceAll(part1.substring(i, i+1) , "");
           }
       for (int a =0; a < part2.length(); a++)
           {
               s = s.replaceAll(part2.substring(a , a+1) , "");
           }
       return (s.length() == 0);
 }
}

我试图看看给定的part1和part2的两个字符串是否可以组合起来创建给定的字符串s

这适用于大多数常规情况。
但是,在类别特殊情况下,我不断收到错误:

Dangling meta character `+` near index 0

它并不总是只是+,有时它会*?

什么是悬空元字符?我有什么方法可以在给定的代码中纠正它。

最佳答案

replaceAll 的第一个参数是正则表达式。请改用替换

关于java - 在 Java 中,什么是悬空元字符以及如何纠正此错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33272062/

相关文章:

java - 查找图像的最小可视矩形的尺寸

java - 如何通过命令行启动selenium

java - 任何重构建议

java - 在这种情况下我应该使用继承还是组合?

java - 隐藏 MySQL 的密码

java - 来自 Class.forName 的 ClassNotFoundException ("com.mysql.jdbc.Driver");

java - 如何在Java中验证日期时间字符串格式 "2018-01-22T18:23:00.000Z"?

java - 修复 Jackson 无法构造 Java.time.LocalDate 实例的问题

java - Glassfish线程池问题

java - 为什么有 4 个单独的字节码用于执行静态/虚拟/接口(interface)/特殊方法,而一个就足够了?