1.append

StringBuffer buf = new StringBuffer("Hard ");

String  aString  =  "Waxworks";

buf.append(aString,3,4);

结果:"Hard w"

buf.append(aString,3,4);

结果为:"Hard work"

append s_content.append("</description>").append("\n");
2.replace和replaceAll

replace fileurl = fileurl.replace("../", "");//去掉../

1>replace的参数是char和CharSequence,既可以支持字符替换,也可以支持字符串替换。
2>replaceall参数是regex, replacement,regex表示是正则表达式。

replace :
String src = new String("ab43a2c43d");

System.out.println(src.replace("3","f"));=>ab4f2c4fd.

System.out.println(src.replace('3','f'));=>ab4f2c4fd.

System.out.println(src.replaceAll("\\d","f"));=>abffafcffd.

System.out.println(src.replaceAll("a","f"));=>fb43fc23d.

System.out.println(src.replaceFirst("\\d,"f"));=>abf32c43d

System.out.println(src.replaceFirst("4","h"));=>abh32c43d.
1
2
3
4
5
6
7
8
9
10
11
12
13
java 替换文本内容中的html标签:
String str="<html><h1>sdfsdfsdf</h1><img src=\"1.png\"></img></html>测试<p>测试</p>";
String abc = str.replaceAll("<[a-zA-Z]+[1-9]?[^><]*>", "").replaceAll("</[a-zA-Z]+[1-9]?>", "");
System.out.println(abc);
1
2
3
结果:

sdfsdfsdf测试测试
1
如何将字符串中的”\”替换成”\”:
String msgIn;

String msgOut;

msgOut=msgIn.replaceAll(“\\”,”\\\\”);
原因:
  ‘\’在java中是一个转义字符,所以需要用两个代表一个。例如System.out.println( “\” ) ;只打印出一个”\”。但是’\’也是正则表达式中的转义字符(replaceAll 的参数就是正则表达式),需要用两个代表一个。所以:\\被java转换成\,\又被正则表达式转换成\。
同样
  CODE: \\\\
  Java: \\
  Regex: \
将字符串中的’/’替换成’\’的几种方式:

msgOut= msgIn.replaceAll(“/”, “\\”);

msgOut= msgIn.replace(“/”, “\”);

msgOut= msgIn.replace(‘/’, ‘\’);

3.lastIndexOf和indexof

  • indexOf 和  lastIndexOf 是什么?
  •   indexOf 和 lastIndexOf 都是索引文件
  •   indexOf 是查某个指定的字符串在字符串首次出现的位置(索引值) (也就是从前往后查)
  • lastIndexOf 是从右向左查某个指定的字符串在字符串中最后一次出现的位置(也就是从后往前查)
  • eg:
  • 注意:  
  • 那么问题来了 两个不是一前一后相反方向还是查么?怎么他们两个返回的索引值相同呢? 
  • 因为:lastIndexOf()方法虽然是从后往前搜索,但返回的位置是从前开始数数和计算的,所以结果和indexOf()方法返回的相同

接下来在看一个例子:

  •    这个时候两个返回的索引值就不同了
  •    因为: 前面已经说了indexOf是从前向后查  而lastIndexOf是从后向前查   但是二者返回索引都是从前开始数数和计算的
  • 总结:
  •    当数组(字符串)中所要查询的数(字符串/字符)在字符串(数组)中只出现一次的时候 二者返回的索引值相同
  •    当数组(字符串)中所要查询的数(字符串/字符)在字符串(数组)中出现两次及以上的时候
  •       indexOf  返回的是 valuesearch 第一次在数组(字符串)出现的位置(从左往右)
  •       lastIndexOf 返回的是 valuesearch 最后一次在数组(字符串)出现的位置(从左往右)《只不过查询的方向不同而已》

4.substring

  • beginIndex -- 起始索引(包括), 索引从 0 开始。

  • endIndex -- 结束索引(不包括)

案例获取文件的结尾名

fileurl = fileurl.replace("../", "");//去掉../
log.info("==== fileurl:"+fileurl); // upload/shjz_db/2019/04/28/dfs_1_01_99_1556436628795_shjz_db_y5v9y5l2J4q6.jpg
//获取文件扩展名
int index = field_file.get("fileurl").lastIndexOf(".");
log.info("==== index:"+index); //75
String result = field_file.get("fileurl").substring(index + 1);
log.info("==== result:"+result);//jpg

append、replace、replaceAll、indexof、lastIndexOf、substring的用法的更多相关文章

  1. js中substr,substring,indexOf,lastIndexOf等的用法

    1.substrsubstr(start,length)表示从start位置开始,截取length长度的字符串. var src="images/off_1.png";alert( ...

  2. JAVA中字符串函数subString的用法小结

    本篇文章主要是对JAVA中字符串函数subString的用法进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助 String str; str=str.substring(int begi ...

  3. 使用js的indexOf,lastIndexOf,slice三函数轻易得到url的服务器,路径和页名

    js的indexOf,lastIndexOf,slice能帮我们在js字符串处理时少走一些弯路. 程序如下: var url="http://www.cnblogs.com/xiandeda ...

  4. IndexOf() LastIndexOf() Contains() StartsWith() EndsWith()方法比较

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.I ...

  5. String中的Indexof,LastIndexOf, Indexofany,LastIndexOfAny 的区别

    本文转载自 http://www.cnblogs.com/qinying/archive/2008/09/22/1295730.html 定位子串是指在一个字符串中寻找其中包含的子串或者某个字符.在S ...

  6. js中substring/substr和C#中Substring的用法

    一:在js中截取字符串的方法有两个:substring和substr 1.方法: substring(int stringIndex,[int endIndex]) 截取从索引为stringIndex ...

  7. C#中substring ()的用法

    C#中substring ()的用法:http://www.cnblogs.com/bluespace/archive/2007/12/11/782336.html

  8. IndexOf、LastIndexOf、Substring的用法

     String.IndexOf String.IndexOf 方法 (Char, Int32, Int32)报告指定字符在此实例中的第一个匹配项的索引.搜索从指定字符位置开始,并检查指定数量的字符位置 ...

  9. IndexOf、LastIndexOf、Substring的用法及C# foreach 中获取索引index的方法

     String.IndexOf String.IndexOf 方法 (Char, Int32, Int32)报告指定字符在此实例中的第一个匹配项的索引.搜索从指定字符位置开始,并检查指定数量的字符位置 ...

随机推荐

  1. 51nod 1737配对

    题意:给定一个n个点的带边权树,  保证n是偶数,给这个树两两配对,使得配对后的点路径和最大,输出最大值. 其实是个很简单的题,但还是被绊了.这充分说明现在连简单题都做不来了555 单独考虑每条边.每 ...

  2. Hadoop- Hadoop详解

    首先所有知识以官网为准,所有的内容在官网上都有展示,所有的变动与改进,新增内容都以官网为准.hadoop.apache.org Hadoop是一个开源的可拓展的分布式并行处理计算平台,利用服务器集群根 ...

  3. java高级特性增强

    第4天 java高级特性增强 今天内容安排: 1.掌握多线程 2.掌握并发包下的队列 3.了解JMS 4.掌握JVM技术 5.掌握反射和动态代理 java多线程增强 .1. java多线程基本知识 . ...

  4. iOS 如何查看app提交审核是否使用广告标识符(IDFA)

    相信很多人被苹果拒绝过 : 您的 App 正在使用广告标识符 (IDFA).您必须先提供关于 IDFA 的使用信息或将其从 App 中移除,然后再上传您的二进制文件. 那么如何查看app里哪里用到ID ...

  5. ZOJ 3640 Help Me Escape:期望dp

    题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3640 题意: 有一个吸血鬼被困住了,他要逃跑... 他面前有n条 ...

  6. 按钮滚动到指定位置(JS)

    function intval(v) { v = parseInt(v); return isNaN(v) ? 0 : v; } function getPos(e) { var l = 0; var ...

  7. 企业安全建设之搭建开源SIEM平台(上)

    前言 SIEM(security information and event management),顾名思义就是针对安全信息和事件的管理系统,针对大多数企业是不便宜的安全系统,本文结合作者的经验介绍 ...

  8. ubuntu 安装cuda 成功

    洗洗睡了

  9. BZOJ_3529_[Sdoi2014]数表_莫比乌斯反演+树状数组

    Description 有一张 n×m 的数表,其第 i 行第 j 列(1 <= i <= n, 1 <= j <= m)的数值为 能同时整除 i 和 j 的所有自然数之和.给 ...

  10. HTML Document 头

    1. 比较宽松的HTML格式,样式 <!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"> 如下 ...