Java正则表达式问题: Matching Function Body

标签 java regex

使用以下正则表达式时遇到一些麻烦。

String fktRegex ="public double " + a+ "2" + b + "(double value) {return value * (.*);}\n";

a 和 b 是单独插入的字符串。

正则表达式工作得很好,直到我也想用它来识别数字。那是 (.*) 部分... 有什么帮助吗`真的会很高兴!谢谢。

C.

最佳答案

从你的例子来看,我认为你需要转义一些正则表达式元字符,例如 { } ( ) * 所以你的正则表达式应该看起来更像

"public double " + a + "2" + b + "\\(double value\\) \\{return value \\* (.*);\\}\n";
<小时/>

演示

// abc2xyz
String a = "abc";
String b = "xyz";

String fktRegex = "public double " + a + "2" + b + "\\(double value\\) \\{return value \\* (.*);\\}\n";

String data = "public double abc2xyz(double value) {return value * 100000;}\n";
Pattern p = Pattern.compile(fktRegex);
Matcher m = p.matcher(data);

if(m.find()){
    System.out.println(m.group(1));
}else{
    System.out.println("no match found");
}

关于Java正则表达式问题: Matching Function Body,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17261591/

相关文章:

c# - .NET 正则表达式如何匹配在特定位置不包含单词的字符串

regex - 使用正则表达式从字符串中提取匹配模式并使用 perl 将其分配给变量

python - 从 pandas 列中存储的 url 中提取子字符串

java - Intellij idea 2022.1.3 ultimate 显示错误java : JPS incremental annotation processing is disabled

java - 使用层次结构数据动态创建 json 文件

java - 如何让我的程序将其覆盖的产品销售额百分比更新为 100%

regex - sed 尝试用另一个字符串替换字符串

regex - 当正则表达式为变量时,analyzer-string不匹配

java - 如何查找自定义数组列表中不存在于另一个数组列表中的元素

java - GridLayout 在应该显示的时候没有显示在框架上