在Java中使用正则表达式匹配${关键}的方法

  介绍

这篇文章将为大家详细讲解有关在Java中使用正则表达式匹配${关键}的方法,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

1。正则表达式匹配${关键}

<代码> \ $ \ {([a - z] +) \}>

<代码>。美元* \ \ {([a - z] +) \}。*>

解释如下:

<代码>。匹配除换行符<代码> \ n 之外的任何单字符

<代码> * 匹配前面的子表达式零次或多次要匹配<代码> *> \ *

<代码>{标记限定符表达式的开始。要匹配<代码>{> \{

<代码> [a - z] 匹配小写字母

<代码> + 匹配前面的子表达式一次或多次。要匹配<代码> +> \ + ,<代码> + 限定是贪婪的,因为它们会尽可能多的匹配文字,只有在它们的后面加上一个<代码> ?>

<代码>()标记一个子表达式的开始和结束位置。子表达式可以获取供以后使用。要匹配这些字符,请使用<代码> \(和<代码> \)

下图展示了括号的选择作用

霸贘ava中使用正则表达式匹配${关键}的方法"

2。在Java中使用正则表达式匹配${关键}

这里直接贴代码了

package 测试;      import  com.sun.xml.internal.ws.api.model.wsdl.WSDLOutput;      import  java.util.ArrayList;   import  java.util.LinkedHashSet;   import 并不知道;   import  java.util.Set;   import  java.util.regex.Matcher;   import  java.util.regex.Pattern;/* *   ,* @Author 歌   ,* @Date  2021/2/26  16   ,* @Version  1.0   ,* @Description   ,*/public  class  TestUtil  {   ,/* *   ,,*,利用好其预编译功能,可以有效加快正则匹配速度   ,,*/public 才能static  Pattern  dynamic =, Pattern.compile (“。* \ \ $ \ \ {([a - z] +) \ \}。*“);   public 才能static  Pattern  dynamicLimitCount =, Pattern.compile(美元“\ \ \ \ {([a - z] +) \ \}“);      ,/* *   ,,*,判断内容中是否包含动态参数(${关键}形式的)   ,,*   ,,*,@param  content 要判断的内容   ,,* @return   ,,*/public 才能static  boolean  isContainsDynamicParameter (String 内容),{   ,,,return  dynamic.matcher(内容).matches ();   ,,}      ,/* *   ,,*,按照动态内容的参数出现顺序,将参数放到列表中   ,,*   ,,*,@param 内容   ,,* @return   ,,*/public 才能static  List< String>, getKeyListByContent (String 内容),{   ,,,Set, paramSet =, new  LinkedHashSet<在();   ,,,Matcher  m =, dynamicLimitCount.matcher(内容);   ,,,while  (m.find ()), {   ,,,,,paramSet.add (m.group (1));   ,,,}   ,,,return  new  ArrayList<祝辞(paramSet);   ,,}         public 才能;static  void  main (String [], args), {   ,,,//测试代码   ,,,String  content =,“尊敬的${名称}客户您好,请于${时间}前到达“;   ,,,System.out.println (isContainsDynamicParameter(内容));   ,,,List, keyListByContent =, getKeyListByContent(内容);   ,,,System.out.println(“内容中的动态参数为:“);   ,,,keyListByContent.forEach (system . out:: println);   ,,}   }

测试代码的运行结果如图

霸贘ava中使用正则表达式匹配${关键}的方法"

关于“在Java中使用正则表达式匹配${关键}的方法”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看的到。

在Java中使用正则表达式匹配${关键}的方法