Java 正则表达式组

标签 java regex

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class hw2 {
    
    static char[] evaluate(String input) throws IllegalArgumentException 
    {
        input = input.replaceAll("\\p{Z}", "");
        
        String result_num1 = null;
        String result_op = null;
        String result_num2 = null;
        
        Pattern pattern_num = Pattern.compile("([+-][0-9]*)([+-/*])([+-]\\d*)");
        Matcher matcher_num = pattern_num.matcher(input);
        
        while(matcher_num.find()) {
            result_num1 = matcher_num.group(1); 
            result_op = matcher_num.group(2); 
            result_num2 = matcher_num.group(3); 
        }
        
        System.out.println(result_num1);
        System.out.println(result_op);
        System.out.println(result_num2);
          
        return element_2; 
    }
  
    public static void main(String[] args) throws Exception{
        
        InputStreamReader isr = new InputStreamReader(System.in);
        BufferedReader reader = new BufferedReader(isr);
        String input = reader.readLine();
        
        char[] result = evaluate(input); 
        System.out.println(result);
        
    }  
}

有人可以指导一下吗?

输入:300 + 25

预期输出:
300
+
25
+

输出:


最佳答案

根据您显示的示例,您可以尝试以下操作吗?

([+-]?\\d+)([-+/*])([+-]?\\d+)

说明:为上述内容添加详细说明。

([+-]?\\d+)  ##Creating first group which checks if there is either +/- present(as optional) following with 1 or more occurrences.
([-+/*])     ##Creating 2nd group and checking if +/- or / is present
([+-]?\\d+)  ##Creating 3rd group which checks if there is either +/- present(as optional) following with 1 or more occurrences.

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

相关文章:

javascript - 不允许数字 (0-9) - javascript 中的正则表达式

c# - 获取以 'proc sql;' 开头并以 'quit;' 结尾的所有 SAS 代码块的正确正则表达式是什么?

regex - python re.sub 模块中以 key 作为匹配组的字典查找

jQuery在输入字段输入6个字符后显示div

java - 如何以编程方式关闭三星设备上的电容式按钮灯?

java - 以恒定单位添加日期之间的差异

javascript - Javascript 字母数字的 RegEx 未按预期工作

Java 组合类正确

java - 在 Scala 中获取通用 Java Enum 的 int 值很热

java - 为什么我们需要对象关系映射器?