gpt4 book ai didi

java - 代码示例中 Java 的正则表达式问题

转载 作者:行者123 更新时间:2023-12-01 19:20:16 24 4
gpt4 key购买 nike

我在表达式中使用正则表达式:示例 !(FA1_A.i & FA1_M.i)

我有运算符:! ( ) & |

操作数的名称为:[a-zA-Z_]*\.[a-zA-Z_]

我编写了 Java 代码来根据标记进行拆分,但它不会根据运算符和操作数进行拆分。它应该是 !, (, FA1_A.i, &, FA1_m.i, ) 。谁能告诉我出了什么问题吗?

String stringOpеrator = "([!|&()])";
String stringOperand = "(([a-zA-Z_]*)\\.([a-zA-Z_]*))";
String reg=stringOpеrator+"|"+stringOperand;
Pattern pattern = Pattern.compile(reg);

Matcher m = pattern.matcher(expression);
// System.out.println("func: " + function + " item: " + item);
while (m.find()) {
int a=m.start();
int b=m.end();
String test=expression.substring(m.start(), m.end());
String g=test;
tokens.add(new Token(expression.substring(m.start() , m.end())));


//m = pattern.matcher(expression);

}

最佳答案

您给出的示例中的名称似乎包含数字,您的正则表达式与该数字不匹配。

关于java - 代码示例中 Java 的正则表达式问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4604909/

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