利用StringBuffer向字符串特定的重复子字符串插入数据
public class InsertDetail {
public void insertInvoiceDetail(StringBuffer sb, String Label, String InsertValue) {
// 查找目标元素的起始位置
int index = 0;
while (true) {
// 起始位置的值小于或者最后一个相同标签的索引值时,将指定的数据InsertValue插入到该标签的当前位置
if (index < sb.lastIndexOf(Label) || index == sb.lastIndexOf(Label)) {
sb.insert(sb.indexOf(Label, index), InsertValue);
// 查找目标元素的起始位置从前一个相同元素的当前位置算起
index = 1 + sb.indexOf(Label, index);
continue;
} else {
break;
}
}
}
// 此方法是为了专门插入统编代码的,在第一个统编代码的位置不插入任何东西
public void insertCode(StringBuffer sb, String Label, String InsertValue) {
// 查找目标元素的起始位置
int index = 0;
while (true) {
// 起始位置的值小于或者最后一个相同标签的索引值时,将指定的数据InsertValue插入到该标签的当前位置
if (index < sb.lastIndexOf(Label) || index == sb.lastIndexOf(Label)) {
// 当找到第一个统编代码时,插入空
if (index == 0) {
sb.insert(sb.indexOf(Label, index), "");
// 查找元素的起始位置从从前一个相同元素的当前位置算起
index = 1 + sb.indexOf(Label, index);
continue;
} else {
sb.insert(sb.indexOf(Label, index), InsertValue);
// 查找目标元素的起始位置从前一个相同元素的当前位置算起
index = 1 + sb.indexOf(Label, index);
continue;
}
} else {
break;
}
}
}
}
利用StringBuffer向字符串特定的重复子字符串插入数据的更多相关文章
- 介绍一个很爽的 php 字符串特定检索函数---strpos()
大家在用 php 开发的时候 是否 有遇到过,对于一个获取的字符串,如果想要特定检测它是否 含有某个特定的字符或者子字符串,总是找不到好方法,或者根本做不到,迫于无奈而使用foreach. 函数: s ...
- C# 利用占位符替换word中的字符串和添加图片
利用占位符替换word中的字符串和添加图片 ///<summary> /// 替换word模板文件内容,包括表格中内容 /// 调用如下:WordStr ...
- Java利用MessageDigest提供的MD5算法加密字符串或文件
MD5是常用的加密算法,也经常用于校验信息完整,如文件的完整性.用术语讲,MD5是一种消息摘要算法(Message Digest Algorithm).另外还有一种常用的消息摘要算法SHA1.如果想了 ...
- 如果是除去末尾特定字符或字符串:TrimEnd方法性能优于Remove方法
测试用例--除去末尾特定字符或字符串,Remove方法和TrimEnd方法的比较 结论: 如果是除去末尾特定字符或字符串:TrimEnd方法性能优于Remove方法 具体测试用例如下: Stopwat ...
- strncmp函数——比较特定长度的字符串
strncmp函数用于比较特定长度的字符串. 头文件:string.h. 语法 int strncmp(const char *string1, const char *string2, size_ ...
- 利用编辑距离(Edit Distance)计算两个字符串的相似度
利用编辑距离(Edit Distance)计算两个字符串的相似度 编辑距离(Edit Distance),又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数.许可 ...
- 不可变字符串String与可变字符串StringBuilder、StringBuffer使用详解
String字符串 char类型只能表示一个字符,而String可以表示字符串,也就是一个字符序列.但String不是基本类型,而是一个定义好的类,是一个引用类型.在Java中,可以将字符串直接量赋给 ...
- 判断QString是否为纯数字,查找自身最长重复子字符串
1.判断QString是否为纯数字 bool IsDigitString(QString strSource) { bool bDigit = false; if (strSource.isEmpty ...
- 【转载】C#使用Split函数根据特定分隔符分割字符串
在C#程序开发过程中,很多时候可能需要将字符串根据特定的分割字符分割成字符或者List集合,例如根据逗号将字符串分割为数组,或者根据竖线将字符串分割成数组,C#中提供了Split()函数来快速将字符串 ...
随机推荐
- VS2010 boost 使用问题一例
最近有一个VS2010的工程用到了boost库,编译的时候报下面的错误: >LINK : fatal error LNK1104: cannot open file 'libboost_thre ...
- linux下C++动态链接C++库示例详解
注意其中使用函数返回基类指针的用法,因为Linux的动态链接库不能像MFC中那样直接导出类 一.介绍 如何使用dlopen API动态地加载C++函数和类,是Unix C++程序员经常碰到的问题. 事 ...
- tensorflow与kubernetes/docker结合使用实践
tensorflow tensorflow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理.Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流 ...
- PB导出规定格式DBF文件
最近在做一个给卫计委做数据上报的数据接口,接口要求使用奇葩的dBase 3数据库存储上报数据,忙活了几天总算搞好了,使用开发工具为powerbuild 12,222个字段的上报数据表生成DBF文件,写 ...
- iOS 开发中中 textView 作为子控件点击输入文本,然后退出文本的方式
方式1. 使用当双击输入的时候弹出键盘同时,使用手势和通知监听键盘的方法实现 代码如下: 1. 监听键盘通知 [[NSNotificationCenter defaultCenter] addObse ...
- 结构-行为-样式-Angularjs-ngSanitize
简单点,上代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> < ...
- H5与CS3权威下.19 选择器(2)结构性伪类选择器
1.CSS中的伪类选择器及伪元素 (1)与自定义的class类选择器不同,伪类选择器是CSS中已经定义好的选择器. eg:a:link{color:#ff0000;} (2)伪元素的使用方法: 选择器 ...
- H3 BPM 跨平台表单发起详解
1.1 目的 为方便技术对接服务,实现流程业务的跨平台对接,给出指引和帮助文档. 2 跨平台以Java为例调用.NET BPM表单流程全过程 2.1 双方系统确定接口协议规则 通信协议:基于soap通 ...
- 办理康卡迪亚大学(本科)学历认证『微信171922772』Concordia学位证成绩单使馆认证Concordia University
办理康卡迪亚大学(本科)学历认证『微信171922772』Concordia学位证成绩单使馆认证Concordia University Q.微信:171922772办理教育部国外学历学位认证海外大学 ...
- 批处理+组策略 实现规定时间段无法开机and定时关机
某爱熬夜的人对付自己的东西 1.shutdown命令 shutdown -a #取消现有的shutdown计划 shutdown -s -t [time] #设定时间关机 shutdown -r -t ...