在Java正则表达式中为方格类添加方括号

问题描述 投票:2回答:1

我想从文件中逐行读取内容String,并在每行中删除所有不是以下[ { } ]之一的caharcters我想使用一种方法:

line = line.replaceAll("[^[({})]]","");

但问题是char []在正则表达式语法中意味着什么。怎么处理呢?

最好的祝福

java regex character lines
1个回答
2
投票

在Java中,正则表达式字符类可以具有联合和交叉,因此,如果您希望将[]视为文字符号,则必须将其转义为内部。由于\可用于定义转义序列,因此它应该加倍以表示文字正则表达式逃避\

使用

line = line.replaceAll("[^\\[({})\\]]","");
                          ^^     ^^
© www.soinside.com 2019 - 2024. All rights reserved.