我正在尝试通过一个字符串来解析垃圾字符,在这个例子中它是:&,%,$,#,*,@等等。但我想保留空格和括号,现在我正在使用字符串上的分隔符,只是构建字符串:
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();
我也尝试使用正则表达式和.matches(),但出于某些原因搞砸了扫描仪。任何有关如何设置分隔符的帮助都将不胜感激!
答案 0 :(得分:1)
你可以做的是使用接受正则表达式的string.replaceAll
,并用给定的字符串替换它的所有出现。
public void TokenIter(String line) {
this.line = line.trim().replaceAll("[&%$#*@]+", "");
}