有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java如何使用带多个参数的分隔符

我试图通过解析字符串来去除垃圾字符,在本例中,它是这样的:&;,%,$,#,*,@,等等,但我想保留空格和括号,现在我在字符串上使用分隔符,并以此为基础构建字符串:

public TokenIter(String line){
    line.trim();
    Scanner scr = new Scanner(line);

    String built = "";
    scr.useDelimiter("[^A-Za-Z]+|^)|^(|^ ");
    while (scr.hasNext()){
        built+= scr.next();
    }
this.line = built.trim();

我还尝试使用正则表达式和。匹配(),但由于某种原因,扫描仪坏了。任何关于如何设置分隔符的帮助都将不胜感激


共 (1) 个答案

  1. # 1 楼答案

    你可以使用^{}来接受一个正则表达式,并用一个给定的字符串替换所有出现的正则表达式

    public void TokenIter(String line) {
        this.line = line.trim().replaceAll("[&%$#*@]+", "");
    }