当前位置: 首页 > 知识库问答 >
问题:

Java正则表达式群

柯瀚玥
2023-03-14
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
+

输出:
null
null
null

通知PLZ

共有1个答案

古起运
2023-03-14

根据您所展示的样品,请您尝试以下操作。

([+-]?\\d+)([-+/*])([+-]?\\d+)
 类似资料:
  • 问题内容: 我正在尝试输入之间的内容,我的模式没有做正确的事,请帮忙。 下面是sudocode: 要求的输出: 之一 二 三 问题答案: 先行使用并在循环中使用,而不是: 看到它在线上工作:ideone 但是最好在这里使用split: 看到它在线上工作:ideone

  • 主要内容:正则表达式支持字符正则表达式(Regular Expression)又称正规表示法、常规表示法,在代码中常简写为 regex、regexp 或 RE,它是计算机科学的一个概念。 正则表达式是一个强大的字符串处理工具,可以对字符串进行查找、提取、分割、替换等操作,是一种可以用于模式匹配和替换的规范。一个正则表达式就是由普通的字符(如字符 a~z)以及特殊字符(元字符)组成的文字模式,它用以描述在查找文字主体时待匹配的

  • 问题内容: 我需要这件事的帮助。查看以下正则表达式: 我想查找这样的词:“自制”,“ aaaa-bbb”而不是“ aaa-bbb”,而 不是 “ aaa–aa–aaa”。基本上,我想要以下内容: 单词-连字符-单词。 它适用于所有内容,但该模式会通过:“ aaa–aaa–aaa”,但不应通过。哪种正则表达式适用于此模式? 问题答案: 可以从表达式中删除反斜杠: 下面的代码应该工作 请注意,您可以使

  • 问题内容: 用java 方法剥离输入的字符串(如MY-CORP \ My.Name)中的MY-CORP \部分的正则表达式是什么,这样我只能得到My.Name部分? 我试过了 但是我 在索引4 ^附近 遇到了 意外的内部错误。 * 问题答案: 您的问题是反斜杠在Java字符串和正则表达式中都有特殊含义。因此,您需要在Java源代码中使用四个斜杠,将两个斜杠传递给regex解析器以在regex中获得

  • 问题内容: 我有一个字符串: 我想在所有运算符上拆分字符串,但将运算符包括在数组中,因此结果数组如下所示: 我目前有这个: 这非常接近,它给出: 我有什么办法使多个字符运算符像我希望的那样出现在数组中? 作为不那么重要的第二个问题,正则表达式中是否有办法从字母周围修剪空格? 问题答案: 这应该做。一切都很好地存储在中。

  • 昨天,我需要向正则表达式添加一个文件路径,创建一个如下所示的模式: 一开始正则表达式不匹配,因为包含几个正则表达式特定的符号,如 或 。作为快速修复,我将它们替换为 和 . 与 . 然而,我问自己,是否没有一种更可靠或更好的方法来清除正则表达式特定符号中的字符串。 Python 标准库中是否支持此类功能? 如果没有,您是否知道一个正则表达式来识别所有正则表达式并通过替代品清理它们?