前言

工作中,我们可能遇到字符串内容替换的场景。例如:我们需要将一个字符串凡是 “#” 标注的,分别替换为不同的内容,那我们应该怎么做呢?

分析,一个字符串可能含有多个“#”,每个 “#”又对应不同的值,那么我们需要替换的内容应该是一个不定的参数类型,要做这些离不开循环操作。

好了,做完以上的简单分析,我们直接就可以进行编码了。

/**
* 字符串内容替换
*
* @param str 要替换的字符串
* @param v 被替换的关键字
* @param args 要替换的内容
* @return
*/
public static String strReplace(
String str,
String v,
String... args) {
if (!isEmpty(str)) {
int n = 0;
int a = args.length;
while (str.contains(v)) {
if (n >= a) {
break;
}
str = str.replaceFirst(
v,
args[n]
);
n++;
}
}
return str;
}   
public static void main(String[] args) {
String str = "{\"v1\":\"#\",\"v2\":\"#\"}";
String s = strReplace(str, "#", "111", "222");
System.out.println(s);
}

中间有个 isEmpty 非空判断方法:

/**
* 判断一个对象是否为空
*
* @param obj 对象
* @return Boolean
*/
public static boolean isEmpty(Object obj) {
if (obj instanceof String) {
obj = obj.toString().trim();
}
if (("").equals(obj) || null == obj || "null".equals(obj) || obj.equals(null)) {
return true;
}
return false;
}

输出:

JAVA编码 —— 字符串关键字内容替换的更多相关文章

  1. Java入门篇(五)——Java的字符串/String类

    前面在举例时有出现过String的例子,当时肯定有一部分朋友不知道这个是做什么用的.其实String类是Java中一个比较特殊的类,字符串即String类,它不是Java的基本数据类型之一,但可以像基 ...

  2. java利用过滤器实现编码的转换,内容输出的替换

    在页面建个表单 <form action="login.do" method="post"> <input type="text&q ...

  3. python字符串内容替换的方法(转载)

    python字符串内容替换的方法 时间:2016-03-10 06:30:46来源:网络 导读:python字符串内容替换的方法,包括单个字符替换,使用re正则匹配进行字符串模式查找与替换的方法.   ...

  4. 帝国cms内容关键字自动加链接且设置内容关键字只替换一次

    网站上线前先设置一些内部链接对后期的优化排名很有帮助,帝国cms也可以设置文章中的关键字自动加链接,但是要注意一下关键词替换次数,最好是1次. 怎么操作呢?分两步完成 1.帝国cms文章关键字自动加链 ...

  5. Java-Runoob-高级教程-实例-字符串:04. Java 实例 - 字符串替换

    ylbtech-Java-Runoob-高级教程-实例-字符串:04. Java 实例 - 字符串替换 1.返回顶部 1. Java 实例 - 字符串替换  Java 实例 如何使用java替换字符串 ...

  6. java判断字符串内容

    java判断字符串是否全为数字 String str = "032";boolean isNum = str.matches("[0-9]+"); java判断 ...

  7. [Java基础]字符串

    1.字符串特点 字符串是常量,创建之后不能修改: 字符串的内容一旦修改,就会马上创建一个新的对象: 字符串实际为一个char value[]={'a','a'};数组: 2.==与equal判断字符串 ...

  8. Java String字符串/==和equals区别,str。toCharAt(),getBytes,indexOf过滤存在字符,trim()/String与StringBuffer多线程安全/StringBuilder单线程—— 14.0

    课程概要 String 字符串 String字符串常用方法 StringBuffer StringBuilder String字符串: 1.实例化String对象 直接赋值  String str=& ...

  9. Java面试题相关内容

    选择题(共5题,每题1.5分,共75分.多选题选不全或选错都不得分.)1. 以下属于面向对象的特征的是(C,D).(两项)A) 重载B) 重写C) 封装D) 继承 2. 以下代码运行输出是(C)pub ...

随机推荐

  1. Android 中查看内存的使用情况集常用adb命令

    http://blog.csdn.net/bigconvience/article/details/35553983 http://blog.csdn.net/duantihi/article/det ...

  2. Struts的JSON机制

    需要加入jar包 Struts的JSON帮助我们自动将对象解析为JSON对象,不用我门借助第三方进行JSON的解析 .具体的使用机制如下: 1.Action类 package StrutsJSON; ...

  3. Java导出List集合到txt文件中——(四)

    有时候,需要将数据以一定格式导出到txt文件中.利用Java的IO可以轻松的导出数据到txt中. package Action.txt; import java.io.BufferedWriter; ...

  4. favicon.ico问题

    在访问web的时候,有时出现favicon.ico 不知道这是一个什么东西,查看百度:

  5. 关于Java Web应用中的配置部署描述符web.xml

    一.web.xml概述 位于每个Web应用的WEB-INF路径下的web.xml文件被称为配置描述符,这个 web.xml文件对于Java Web应用十分重要,每个Java Web应用都必须包含一个w ...

  6. Golang依赖管理工具:glide从入门到精通使用

    这是一个创建于 2017-07-22 05:33:09 的文章,其中的信息可能已经有所发展或是发生改变. 介绍 不论是开发Java还是你正在学习的Golang,都会遇到依赖管理问题.Java有牛逼轰轰 ...

  7. MyCP(课下作业,必做)

    作业要求 编写MyCP.java 实现类似Linux下cp XXX1 XXX2的功能,要求MyCP支持两个参数: java MyCP -tx XXX1.txt XXX2.bin 用来把文本文件(内容为 ...

  8. SQL中的 if 结构和循环(while)结构

  9. 追求极致--纯css制作三角、圆形按钮,兼容ie6

    参考了天猫.微博等网站的做法,用纯html和css实现,效果还是不错的.以下是成果,兼容主流浏览器,包括ie6. <!DOCTYPE html PUBLIC "-//W3C//DTD ...

  10. poj3061 poj3320 poj2566尺取法基础(一)

    poj3061 给定一个序列找出最短的子序列长度,使得其和大于等于S 那么只要用两个下标,区间和小于S时右端点向右移动,区间和大于S时左端点向右移动,在这个过程中更新Min #include < ...