gpt4 book ai didi

java - 正则表达式:PatternSyntaxException:非法重复

转载 作者:行者123 更新时间:2023-11-29 09:55:45 25 4
gpt4 key购买 nike

我不擅长正则表达式,我正在尝试使用 java.lang.String replaceAll() 方法,代码段如下

一个是:

public class method3 {

public static int addTwoNumbers(int one, int two){
return one+two;
}

public static void main (String[] args){
int total = addTwoNumbers(1, 3);
System.out.println(total);
}
}

用B代替

null
public class method3 {
/* some writting */
public static int addTwoNumbers(int one, int two){
return one+two;
}
/*more text*/
public static void main (String[] args){
int total = addTwoNumbers(1, 3);
System.out.println(total);
}//end of
}

这给了我以下错误

java.util.regex.PatternSyntaxException: Illegal repetition

我猜这与 /**/ 字符有关?

你如何对它进行排序,还有我需要注意的其他字符吗?

编辑:这是错误信息

Exception in thread "AWT-EventQueue-0" java.util.regex.PatternSyntaxException: Illegal repetition near index 25
null
public class method2 {

public static int addTwoNumbers(int one, int two){
return one+two;
}

public static void main (String[] args){
int total = addTwoNumbers(1, 3);
System.out.println(total);
}
}


^
at java.util.regex.Pattern.error(Pattern.java:1924)
at java.util.regex.Pattern.closure(Pattern.java:3104)
at java.util.regex.Pattern.sequence(Pattern.java:2101)
at java.util.regex.Pattern.expr(Pattern.java:1964)
at java.util.regex.Pattern.compile(Pattern.java:1665)
at java.util.regex.Pattern.<init>(Pattern.java:1337)
....

调用 replaceAll()

        String a = readFile(directoryToAddFile,startOfCode, endOfCode);
String b = textarea.getText().toString();
String content = IOUtils.toString(new FileInputStream(directoryToAddFile));
content = content.replaceAll(a, b);
IOUtils.write(content, new FileOutputStream(directoryToAddFile));

最佳答案

目前,您的代码尝试将“to replace”字符串作为正则表达式进行分析。

要按字面而不是正则表达式替换字符串,您可以使用 Pattern#quote(String) .

content = content.replaceAll(Pattern.quote(a), b);

此外,作为旁注,您可能会发现 String#replace(CharSequence, CharSequence)在这种情况下比 replaceAll 更合适。

关于java - 正则表达式:PatternSyntaxException:非法重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12268626/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com