今天就跟大家聊聊有关java用正则表达式过滤特殊字符的方法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。
创新互联是一家专业提供竹山企业网站建设,专注与网站制作、成都网站建设、H5技术、小程序制作等业务。10年已为竹山众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
实例代码如下:
public class FilterSpecialStr { public static void main(String[] args) { String regEx="[\n`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}‘;:”“’。, 、?]"; // 除了字母数字下划线之外的字符为非法字符 Pattern pattern = Pattern.compile(regEx); // 指定设置非法字符 // Pattern pattern = Pattern.compile("[@#]"); String str = "123@abc {} \n #D EF。"; Matcher matcher = pattern.matcher(str); StringBuffer buffer = new StringBuffer(); //如果找到非法字符 while (matcher.find()) { // 如果里面包含非法字符如冒号双引号等,那么就把他们消去,并把非法字符前面的字符放到缓冲区 matcher.appendReplacement(buffer, ""); } // 将剩余的合法部分添加到缓冲区 matcher.appendTail(buffer); System.out.println("过滤前的字符: " + str); System.out.println("过滤后的字符: " + buffer.toString()); } }
输出的结果:
过滤前的字符: 123@abc {}
#D EF。
过滤后的字符: 123abcDEF
看完上述内容,你们对java用正则表达式过滤特殊字符的方法有进一步的了解吗?如果还想了解更多相关内容,欢迎关注创新互联行业资讯频道,感谢各位的阅读。