项目目前在消息的模版,模版中需要替换很多参数,比方说“用户名”,“日期”等等.不过目前没有想到更好的替换参数的方法,所以目前只能使用一个比较简单的方式来实现.这个方式太死板,参数对应必须要在代码中写死,若是在模版中多加一个参数,那么就要修改Java类中的代码,非常不好.临时凑合一下,以后想到更好的方式,在来实现.以下为代码实现: 其实这个实现就是使用了MessageFormat这个类; String content = "ab,cc,{名称},{密码},{日期},dd,ff"; Str…
目录 ✍前言 版本约定 ✍正文 DateFormat:日期时间格式化 SimpleDateFormat NumberFormat:数字格式化 DecimalFormat 一.0和#的使用(最常见使用场景) 二.科学计数法E 三.分组分隔符, 四.百分号% 五.本地货币符号¤ ChoiceFormat MessageFormat:字符串格式化 参数模式 注意事项 static方法的性能问题 和String.format选谁? 经典使用场景 ✍总结 推荐阅读 分享.成长,拒绝浅藏辄止.关注公号[BA…
在平常工作中,生成word的方式主要是C#读取html的模板文件处理之后保存为.doc文件,这样的好处是方便,快捷,能满足大部分的需求.不过有些特殊的需求并不能满足,如要生成的Word为一个表格,只是一部分字符串需要变化,用上面的方法生成Word表格容易变形.如果我们能读取一个word模板,把模板里定义的固定字符串如{标记1}替换为想要的文字,然后生成新的word.这样生成的Word非常整洁. 查找了网上许多方法,虽然都是调用office的接口,并没有一个好的方案.通过自己的实验,比较,使用Mi…
import java.text.MessageFormat; import java.util.GregorianCalendar; import java.util.Locale; public class Test3 { public static void main(String[] args) throws Exception { String pattern1 = "{0},你好!你于 {1} 存入 {2}元"; String pattern2 = "At {1,…
MessageFormat.format("region = '{0}'", "en");实际结果是region = {0}如果需要被替换的话,需要用双单引号 MessageFormat.format("region = ''{0}''", "en");…
Java里从来少不了字符串拼接的活,Java程序员也肯定用到过StringBuffer,StringBuilder,以及被编译器优化掉的+=.但这些都和下文要谈的无关. 比如有这样的字符串: 张三将去某地点找李四. 其中,张三某地点和李四都是可变的,比如张三变成王五,某地点变成纽约,李四变成赵六.于是整句变成: 王五将去纽约找赵六. 如果直接将张三,某地点和李四用变量替代,再拼接起来,可以达到目的.但是,代码不好写,也不好看,也不好维护.但是,我看过很多SQL拼接,HTML拼接都是这样做的.我自…
Java里从来少不了字符串拼接的活,Java程序员也肯定用到过StringBuffer,StringBuilder,以及被编译器优化掉的+=.但这些都和下文要谈的无关. 比如有这样的字符串: 张三将去某地点找李四. 其中,张三某地点和李四都是可变的,比如张三变成王五,某地点变成纽约,李四变成赵六.于是整句变成: 王五将去纽约找赵六. 如果直接将张三,某地点和李四用变量替代,再拼接起来,可以达到目的.但是,代码不好写,也不好看,也不好维护.但是,我看过很多SQL拼接,HTML拼接都是这样做的.我自…
其实没什么技术含量,因为老是想不起来,所以在此文做下记录. 通常我们的应用系统中都会有很多短信的发送,或者是信息邮件等的推送,而这些信息却有着相同的共性,比如只是用户名换了下. 像下面这条,除了红色字体外,其余都是相同的. 尊敬的客户:您的支付宝账户110****11签约网商贷于2018-06-10应还1999.99元,系统将于2018-06-10从该支付宝账户余额.绑定储蓄卡.余额宝.您的网商银行结算账户及余利宝(如有)自动扣款,因余额和储蓄卡还贷款有限额限制,请优先确保余额宝.网商银行结算账…
我们知道java中可以用MessageFormat.format来格式化字符串.这个方法在我们的实际开发中经常用到,有点类似模板,这样我们就不需要用很恶心的拼接字符串了.如下面 String s1="my blogWebSite is {0} and sinaWeiBo is {1} "; String s2=MessageFormat.format(s1,"http://www.3lai8.com","http://weibo.com/javaee6&q…
java.text.MessageFormat格式化字符串时的小技巧 public static void main(String[] args) throws InterruptedException { MessageFormat form = new MessageFormat( "{2,date,yyyy-MM-dd HH:mm:ss.SSS} The disk \"{1}\" contains {0,number,#.##} file(s).{3}");…
一.    引言 前面两节介绍的字符串格式化方法,都有其本身对应的缺陷,老猿不建议大家使用,之所以详细介绍主要是考虑历史代码的兼容性,方便大家理解前人留下的代码.老猿推荐大家新编码时使用format方法,因为该方法比前面2种方法更强大,也更容易理解.format方法是在Python2.6以后的版本才支持. format格式字符串中使用大括号将格式符(也称为"转换说明符"."替换字段")括起来,对应的真实值通过format方法传递进来.format格式字符串有多种使用…
一.前言 刚开始从.net的转向java的时候总觉得 String.format 用得不习惯,希望格式模版会这样 {}, }$s,$s's cat.%2$s,this is %1$s's dog. .后来发现 java.text.MessageFormat.format 可以满足我这个小小的愿望. 二.静态方法 java.text.MessageFormat.format    方法定义: String MessageFormat.format(String fmt, Object...args…
在MessageFormat.format方法中组装jason数据字符串:{code:"w1",des:"w2"},起止分别有左大括号和右大括号.方法是将单引号把大括号包含起来.如下: String responseTemplate = "'{'code:\"{0}\",des:\"{1}\"'}'"; System.out.println(MessageFormat.format(responseTemp…
用法一: package gacl.request.study; import java.io.IOException; import java.text.MessageFormat; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpSer…
MessageFormat.format方法实例 public static void main(String[] args) { String a= "aaa"; String b= "bb"; String c= "c"; StringBuilder sb = new StringBuilder(); sb.append(a).append(b).append(c); System.out.println(MessageFormat.form…
MessageFormat 提供了以与语言无关方式生成连接消息的方式.使用此方法构造向终端用户显示的消息. MessageFormat 获取一组对象,格式化这些对象,然后将格式化后的字符串插入到模式中的适当位置 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象. package com.java.test; import java.text.MessageFormat; public class TestFormat { public static void ma…
FormatElement: { ArgumentIndex }:是从0开始的入参位置索引. { ArgumentIndex , FormatType } { ArgumentIndex , FormatType , FormatStyle } FormatType: :指定使用不同的Format子类对入参进行格式化处理.值范围如下: number:调用NumberFormat进行格式化 date:调用DateFormat进行格式化 time:调用DateFormat进行格式化 choice:调…
语言国际化要求,开发上要求Oracle数据库SQL中对应的返回信息-Message,实现一个通用函数调用,比如:提示信息内容:条码123456当前工站在FCT!”,即通用的信息内容格式化标准为:“条码{0}当前工站在{1}!”. 在C#代码中可以通过String.Format函数占位符替换的模式实现字符串格式化输出,Oracle中暂无此函数,所以可参考String.Format反编译的相应的逻辑去实现即可: 信息内容中多个参数,是以占位符{}来表示,多个参数则用数组:通过自定义数组类型(即Tab…
1.java.text.Format的继承结构如下   2.MessageFormat模式 FormatElement { ArgumentIndex }:是从0开始的入参位置索引 { ArgumentIndex , FormatType } { ArgumentIndex , FormatType , FormatStyle } FormatType:指定使用不同的Format子类对入参进行格式化处理.值范围如下: number:调用NumberFormat进行格式化 date:调用DateF…
string.Format字符串格式化说明 www.111cn.net 编辑:Crese 来源:转载   先举几个简单的应用案例: 1.格式化货币(跟系统的环境有关,中文系统默认格式化人民币,英文系统格式化美元) string.Format("{0:C}",0.2) 结果为:¥0.20 (英文操作系统结果:$0.20) 默认格式化小数点后面保留两位小数,如果需要保留一位或者更多,可以指定位数string.Format("{0:C1}",23.15) 结果为:¥23.…
                                            第3.11节 format字符串格式化的格式控制 一.    引言 上节介绍了四种format进行字符串格式化的方法,但都只介绍了真实值与格式符的位置映射关系,而没有介绍诸如宽度.对齐方式.精度控制等控制每个真实值显示格式的内容.本节就介绍怎么进行字符串格式化的格式控制,这种格式控制的要素在format格式化中称为"格式说明符". 在前面章节介绍了"格式符"(也称为"替…
在Vi里面实现字符串的批量替换. a. 文件内全部替换: %s#abc#def#g(用def替换文件中所有的abc) 例如把一个文本文件里面的"linuxidc.com"全部替换成"linuxidc.net": :%s#linuxidc.com#xwen.net#g (如文件内有#,可用/替换,比如:%s/linuxidc.com/xwen.net/g) b. 文件内局部替换: 把10行到50行内的"abc"全部替换成"def"…
注: 1.session:系统默认开启;用途:防止跳过登录(只能访问登录方法);session和cookie的用法(手册->专题); 赋值:session('name','value'); 取值:$value=session('name'); 删除某个session的值的使用: session('name',null);//删除name 删除所有的session session(null); 判断session: session('?name'); 2.create可以把表单里name不是列名的…
python字符串截取与替换的多种方法 时间:2016-03-12 20:08:14来源:网络 导读:python字符串截取与替换的多种方法,以冒号分隔的字符串的截取方法,python字符串替换方法,用字符串本身的方法,或用正则替换字符串.   转自:http://www.xfcodes.com/python/zifuchuan/9398.htm   python字符串截取与替换的多种方法 一,字符串的截取Python的字符串是有序集合,可以通过索引来提取想要获取的字符,把python的字符串作…
具体详见tp手册. 如果需要修改模板替换映射路径. 则需: 'TMPL_PARSE_STRING'=>array( '__PUBLIC__'=>__ROOT__.'/'.APP_NAME.'/Tpl/Public', '__UPLOAD__'=>__ROOT__.'/Uploads' ),…
剑指offer 1,输入一个字符串,将字符串的空格替换成%20    function replaceSpace(str){      return str.replace(/\s/g,"%20");   }    replaceSpace("we are right")…
一. 字符串拼接 concat('asdf',str); 说明: 拼接asdf 和 str 二. 字符串截取 从左开始截取字符串 left(str, length) 说明:) as abstract from tablename 从右开始截取字符串 right(str,length) 说明:) as abstract from tablename 按长度截取字符串 substring(str, pos) substring(str, pos, length) 说明:substring(被截取字段…
.format字符串拼接 # -*- coding:utf8 -*- #不一一对应会报错 tp1 = "i am {}, age {}, {}".format("charon",18,"pluto") print(tp1) tp2 = "i am {2}, age {0}, {1}".format("charon",18,"pluto") print(tp2) tp2 = "i…
1.MessageFormat.format import java.text.MessageFormat; /** * Created by SYJ on 2017/9/13. */ public class MainTest { public static void main(String[] args) { String url = "http://xxx.xxx.xxx?name={0}&age={1}"; String path = MessageFormat.for…
sql 语句中格式化,如果加入{}占位符,要替代的是整形变量,而恰好这个整形变量的位数超过4位, MessageFormat.format 会在这个整形变量中默认每隔三位加一个逗号,类似这样:1000,会被格式化成1,000, insert into table1 (a,b,c) values({0},{1},{2}),格式后的sql会变成这样, insert into table1 (a,b,c) values('a',1,000,'ddd'), 后面的values变成4位了, 解决办法,用第…