栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

正则表达式 匹配中文

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

正则表达式 匹配中文

Java 正则表达式 匹配中文

在处理中,使用SpringEl进行日期计算,会碰到key是中文的情况,要先进行匹配中文:

语法:

中文    u4e00-u9fa5

匹配中文

要求:

如何把

{"formula": "(#处理完成时间-#开始处理时间+#dealTime)/(1000)"}

提取处理完成时间、开始处理时间和dealTime

代码:

public static void main(String[] args) {
    String content = ""formula": "(#处理完成时间-#开始处理时间+#dealTime
)/(1000)"";
    List matchWord = getMatchWord(content);
    System.out.println(matchWord);
}


public static List getMatchWord(String content) {
    List strList = new ArrayList<>();
    String pattern = "#([a-zA-Z0-9_\u4e00-\u9fa5]+)"; // 英文数字中文
    Pattern p = Pattern.compile(pattern);
    Matcher m = p.matcher(content);
    while (m.find()) {
        strList.add(m.group(1));
    }
    return ListUtils.emptyIfNull(strList).stream().distinct().collect(Collectors.toList());
}

结果:

[处理完成时间, 开始处理时间, dealTime]

获取到对应的字段,再重新赋英文的名字,这样才能使用SpringEl进行计算。

总结:

  匹配中文,主要就是知道其语法,这个是固定的,怎么推敲写,就没法子了。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/356077.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号