1.6 正则表达式【匹配非字母和数字】

mac2022-06-30  121

字母和数字匹配符 \W

\W 可以配置 非字母和数字,等价于 [^a-zA-Z0-9] 。

测试实例

被匹配字符串

private static final String test1 = "a12.a,df3.1d-2tt.*";

匹配公式3

匹配公式

String expression3 = "\\W";

匹配结果

 


匹配公式4

匹配公式

String expression4 = "[^a-zA-Z0-9]";

匹配结果

 

注:可以看出匹配公式3和匹配公式4匹配结果一致


测试代价【java】

package com.kgo.javaregular.character; import cn.hutool.core.util.ReUtil; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; /** * @author keepgoon * @Description: TODO * @date 2019/10/122:31 */ public class RE3Test { private static Logger log = LoggerFactory.getLogger(RE3Test.class); private static final String test1 = "a12.a,df3.1d-2tt.*"; public static void main(String[] args) { String expression1 = "\\w"; String expression2 = "[a-zA-Z0-9]"; String expression3 = "\\W"; String expression4 = "[^a-zA-Z0-9]"; log.debug("\n===============匹配公式1 ======================="); find(expression1,test1); log.debug("\n===============匹配公式2 ======================="); find(expression2,test1); log.debug("\n===============匹配公式3 ======================="); find(expression3,test1); log.debug("\n===============匹配公式4 ======================="); find(expression4,test1); } private static String length(String printStr){ return StringUtils.rightPad(printStr,10," ") + " : {}"; } private static void find(String pattern,String matchedStr){ log.debug(" 正则表达式 【 {} 】; 被匹配的字符串 【 {} 】" ,pattern,matchedStr); log.debug(length("findAll"), ReUtil.findAll(pattern,matchedStr,0)); log.debug(length("count"), ReUtil.count(pattern,matchedStr)); log.debug(length("contains"), ReUtil.contains(pattern,matchedStr)); //log.debug(length("contains"), ReUtil.get); } }

编程技术

编程语言java正则匹配开源工具集  hutool打印logback字符串格式化lang3
最新回复(0)