Java清除字符串中的特殊字符,可以使用String类的replaceAll方法。
public String replaceAll(String regex,String replacement)
使用给定的 replacement 替换此字符串所有匹配给定的正则表达式的子字符串。
调用此方法的 str.replaceAll(regex, repl) 形式与以下表达式产生的结果完全相同:
Pattern.compile(regex).matcher(str).replaceAll(repl)示范:
package com.dusd.codingpublic class Test01 {
public static void main(String[] args) {
// TODO Auto-generated method stub
String str = "abc-bcd"
System.out.println(str.replaceAll("-", ""))
}
}
输出:abcbcd
package com.jingdu.common\x0d\x0aimport java.io.IOException\x0d\x0aimport java.io.PrintWriter\x0d\x0aimport javax.servlet.Filter\x0d\x0aimport javax.servlet.FilterChain\x0d\x0aimport javax.servlet.FilterConfig\x0d\x0aimport javax.servlet.ServletException\x0d\x0aimport javax.servlet.ServletRequest\x0d\x0aimport javax.servlet.ServletResponse\x0d\x0aimport javax.servlet.http.HttpServletRequest\x0d\x0aimport javax.servlet.http.HttpServletResponse\x0d\x0a\x0d\x0apublic class IllegalCharacterFilter implements Filter {\x0d\x0a private String[] characterParams = null\x0d\x0a private boolean OK=true\x0d\x0a \x0d\x0a public void init(FilterConfig config) throws ServletException {\x0d\x0a \x0d\x0a//if(config.getInitParameter("characterParams").length() 回答于 2022-11-16给你推荐java 字符串截取的三种方法:
split()+正则表达式来进行截取。
将正则传入split()。返回的是一个字符串数组类型。不过通过这种方式截取会有很大的性能损耗,因为分析正则非常耗时。
2.通过subString()方法来进行字符串截取。
subString通过不同的参数来提供不同的截取方式
只传一个参数
例如:
String sb = "bbbdsajjds"
sb.substring(2)
将字符串从索引号为2开始截取,一直到字符串末尾。(索引值从0开始);
传入2个索引值
String sb = "bbbdsajjds"
sb.substring(2, 4)
从索引号2开始到索引好4结束(并且不包含索引4截取在内,也就是说实际截取的是2和3号字符);
运行结果如下:
bdsajjds
bd
3.通过StringUtils提供的方法
StringUtils.substringBefore(“dskeabcee”, “e”)
/结果是:dsk/
这里是以第一个”e”,为标准。
StringUtils.substringBeforeLast(“dskeabcee”, “e”)
结果为:dskeabce
这里以最后一个“e”为准。