当前位置: 首页 > news >正文

广州做网站信科建设太原百度搜索排名优化

广州做网站信科建设,太原百度搜索排名优化,网站被墙怎么做跳转,沈阳最新消息发布目录 1、通配符应用场景 2、实现方案分析 2.1、可能针对不同模板中核定参数硬编码到程序之中写死 2.2、通配置模板之中动态获得对应的参数 3、通过正则表达式验证与替换参数${}参考示例 4、参考文章 1、通配符应用场景 我们在使用通配符场景,主要是应用于短信…

目录

1、通配符应用场景

2、实现方案分析

2.1、可能针对不同模板中核定参数硬编码到程序之中写死

2.2、通配置模板之中动态获得对应的参数

3、通过正则表达式验证与替换参数${}参考示例

4、参考文章

1、通配符应用场景

        我们在使用通配符场景,主要是应用于短信发送水费通知信息。其中里面可能有户名、当前水费金额,以及当期【年月 如2024年06月】等等相关需要替换的动态信息需要使用到相关通配符作为参数进行相关的替换。同时这次替换参数还需要配置到相关的短信发送提供商对应的模板之中。

2、实现方案分析

2.1、可能针对不同模板中核定参数硬编码到程序之中写死

         我是在最近维护以前其他旧系统代码之中,发现了相关类似的代码;这样相当于每个模板一旦设定后续再追加相关参数就需要调整和修改对应的代码之中各处代码;无法适应新增相关动态配置通配符参数。我是增加一个通配符参数,结果仅仅只修改某一处代码,结果发现无法实现替换。于是需要搜索相关对应参数进行各处都得修改之后才能实现增加通配符参数方可生效。

2.2、通配置模板之中动态获得对应的参数

        为何需要通过通配符之中动态获取参数,因为这样可以通过如下两个参数来控制。模板类型与模板id,然后通过模板字符串动态获取其中参数;这样就可以获得正确获得变化后的参数名称;同时保存一份到模板类型数据表之中。这样就可以通过解析相关参数就可以动态去解析有变化的参数,这样通过参数替换就可以快速新增对应参数获得不同水司所需短信要求。

3、通过正则表达式验证与替换参数${}参考示例

       经常需要使用正则表达式来查找和处理文本。其中一个常见的需求是查找字符串中的${}格式的变量,并将其替换为对应的值。我们将介绍如何使用Java正则表达式来查找${}并进行替换操作,同时提供一些代码示例。

【***水务】尊敬的${username},户号:${household_no},地址:${address},${meterReadMonth}用水量${used_num}立方米,费用共${fee}元。您可通过支付宝、微信等渠道缴费。请您认真核对缴费信息,如缴错我公司概不负责。如已缴费,请忽略此短信。供水热线07**-5834***

 正则表达式查找${}

  在Java中,可以使用Pattern和Matcher类来进行正则表达式的匹配操作。

import java.util.regex.Matcher;
import java.util.regex.Pattern;public class TemplateParamsExtractor {public static void main(String[] args) {// 定义要匹配的字符串String input = "【***水务】尊敬的${username},户号:${household_no},地址:${address},${meterReadMonth}用水量${used_num}立方米,费用共${fee}元。您可通过支付宝、微信等渠道缴费。请您认真核对缴费信息,如缴错我公司概不负责。如已缴费,请忽略此短信。供水热线07**-5834***";// 定义匹配的正则表达式String patternString = "\\$\\{([^}]*)\\}";//String patternString = "\\$?\\{([^\\}]+)\\}";// 创建Pattern对象Pattern pattern = Pattern.compile(patternString);// 创建Matcher对象Matcher matcher = pattern.matcher(input);// 查找匹配的结果while (matcher.find()) {// 获取匹配到的变量名String variableName = matcher.group(1);System.out.println("variableName "+variableName);// 将变量名替换为对应的值String value = getVariableValue(variableName);// 替换匹配到的变量input = input.replace(matcher.group(), value);}// 输出替换后的结果System.out.println(input);}// 根据变量名获取对应的值public static String getVariableValue(String variableName) {/**【***水务】尊敬的罗琼,户号:19587,地址:朝阳街-纺织厂311-312,2024年-06月用水量11立方米,费用共33.00元。您可通过支付宝、微信等渠道缴费。请您认真核对缴费信息,如缴错我公司概不负责。如已缴费,请忽略此短信。供水热线07**-5834****/// 在实际应用中,可以根据变量名从配置文件、数据库或其他数据源中获取对应的值String matchValue="";switch (variableName){case "username":matchValue="罗琼";break;case "household_no":matchValue="19587";break;case "address":matchValue="朝阳街-纺织厂311-312";break;case "meterReadMonth":matchValue="2024年-06月";break;case "used_num":matchValue="11";break;case "fee":matchValue="33.00";break;default:break;}return matchValue;}}

在上面的示例中,我们定义了一个带有${}格式的输入字符串,并使用正则表达式\\$\\{([^}]*)\\}来匹配其中的变量名。其中:

\\$表示匹配美元符号$;
\\{和\\}表示匹配左右大括号{};
([^}]*)表示匹配大括号中的任意字符,除了右括号}。
通过在正则表达式中使用圆括号,我们可以将其中的变量名提取出来。

接下来,我们创建Pattern对象并使用输入字符串和正则表达式初始化它。然后,我们创建Matcher对象并使用find()方法查找匹配的结果。在每次循环中,我们使用group(1)方法获取匹配到的变量名,并使用自定义的getVariableValue()方法获取对应的值。最后,我们使用replace()方法将匹配到的变量替换为对应的值。最后,我们输出替换后的结果。

variableName username
variableName household_no
variableName address
variableName meterReadMonth
variableName used_num
variableName fee
【***水务】尊敬的罗琼,户号:19587,地址:朝阳街-纺织厂311-312,2024年-06月用水量11立方米,费用共33.00元。您可通过支付宝、微信等渠道缴费。请您认真核对缴费信息,如缴错我公司概不负责。如已缴费,请忽略此短信。供水热线07**-5834***

4、参考文章

       java正则查找${}

http://www.mmbaike.com/news/41717.html

相关文章:

  • 惠州网站建设学校5118和百度指数
  • win2008搭建php网站游戏推广员骗局
  • 怎么在工商局网站做股东变更seo优化销售话术
  • 网站用什么空间好app开发需要哪些技术
  • 网站开发可行性分析报告品牌推广方案模板
  • 设计网站最重要的是要有良好的站长工具关键词
  • 优秀的手机网站设计如何让百度快速收录网站文章
  • html图片网站产品推广软文300字
  • 网站注册域名网页设计与制作步骤
  • 大良营销网站建设服务高权重外链
  • 室内设计找图片的网站常用的网络营销平台有哪些
  • 企业网站的类型有哪些网络营销策划书的结构
  • 最佳线上网站建设费用重庆seo网络推广关键词
  • 网站建设排名网络推广怎么推广
  • 设计师网站官网高端网站设计公司
  • 丹阳网站怎么做seo郑州网站seo
  • 绵阳top唯艺网站建设网站搜索引擎优化
  • 互联网公司排名情况seo优化是怎么优化的
  • 动漫网页设计素材江苏搜索引擎优化
  • 网站后台不能粘贴百度推广渠道
  • wordpress 调用特定分类文章怎么优化百度关键词
  • 便宜的做网站公司什么是搜索引擎优化
  • 重庆知道推广网站方法优化大师怎么删除学生
  • 国外哪些网站可以兼职做任务网站seo关键词设置
  • 怎么做网站代购南宁seo专员
  • 北京智能建站系统价格网站怎么搭建
  • 教做衣服的网站有哪些福州seo代理商
  • 网站开发 .net怎样在百度上做广告
  • 邯郸做wap网站的公司企业营销策划书
  • wordpress 评论看不到外贸网站谷歌seo