正则表达式过滤特殊字符

效果如图:

正则表达式过滤特殊字符_第1张图片

java代码:

/**
	 *  正则表达式过滤特殊字符  
	 * @param str
	 * @return
	 * @throws PatternSyntaxException
	 */
    public static String StringFilter(String str)   throws PatternSyntaxException{      
		// 只允许字母和数字        
		// String   regEx  =  "[^a-zA-Z0-9]";                      
		// 清除掉所有特殊字符   
		//String regEx="[`~!@#$%^&*()+=|{}':;',\\[\\].<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]"; 
		//不过滤   .doc的.
    	String regEx="[`~!@#$%^&*()+=|{}':;',\\[\\]<>/?~!@#¥%……&*()——+|{}【】‘;:”“’。,、?]";   
		Pattern   p   =   Pattern.compile(regEx);      
		Matcher   m   =   p.matcher(str);      
		return   m.replaceAll("").trim();      
    } 

调用测试:

 /**
     * 测试过滤字符串
     * 测试获取文件后缀名
     * @param args
     */
    public static void main(String[] args) {
    	//正则表达式过滤字符串特殊字符
    	String   str   =   "关于下发“4G攻坚计划”_集团市场专项活动的通知.doc";   
    	System.out.println(str);      
    	System.out.println(StringFilter(str)); 
    }

输出结果:

关于下发“4G攻坚计划”_集团市场专项活动的通知.doc
关于下发4G攻坚计划_集团市场专项活动的通知.doc

你可能感兴趣的:(字符串处理)