提交本地工具-标准比对的相关接口

This commit is contained in:
duanwenbin
2021-07-08 15:50:05 +08:00
parent 4f7d1648db
commit 4bfbd48dc6
25 changed files with 3715 additions and 0 deletions
@@ -0,0 +1,68 @@
package com.adc.da.common;
import com.adc.da.slrs.standardSplit.vo.MarkTextVO;
import org.apache.commons.lang.StringUtils;
import java.util.List;
/**
* @Description:
* @Author: yangxuenan
* date: 2020/3/24 15:28
*/
public class HtmlTextExcel {
public static String changeHtmlToExcel (String itemContent, List<MarkTextVO> addList, List<MarkTextVO> delList) {
if (StringUtils.isNotEmpty(itemContent)) {
itemContent = itemContent.replaceAll("<div>","");
itemContent = itemContent.replaceAll("<div class=\"compareBackgroundColor\">","");
itemContent = itemContent.replaceAll("</div>","\n");
itemContent = itemContent.replaceAll("<p>","");
itemContent = itemContent.replaceAll("</p>","\n");
//获取所有新增内容的位置
String splitContentAdd = itemContent;
int addSpiltIndex = 0;
int cirIndex = 0;
int stLen = "<span class=\"insertClass\">".length();
int edLen = "</span>".length();
while (splitContentAdd.contains("<span class=\"insertClass\">")) {
int addStIndex = splitContentAdd.indexOf("<span class=\"insertClass\">");
int addEdIndex = splitContentAdd.indexOf("</span>");
if (addStIndex > -1) {
MarkTextVO markTextVO = new MarkTextVO();
markTextVO.setStartIndex(addSpiltIndex + addStIndex - (cirIndex*(stLen+edLen)));
markTextVO.setEndIndex(addSpiltIndex + addEdIndex - (cirIndex*(stLen+edLen)) - stLen);
addList.add(markTextVO);
addSpiltIndex = addSpiltIndex + addEdIndex + 7;
// String replaceStr = splitContentAdd.substring(0,addStIndex);
splitContentAdd = splitContentAdd.substring(addEdIndex + 7,splitContentAdd.length());
cirIndex++;
}
}
//获取所有删除内容的位置
String splitContentDel = itemContent;
int delSpiltIndex = 0;
int cirIndexDel = 0;
int stLenDel = "<span class=\"delClass\">".length();
int edLenDel = "</span>".length();
while (splitContentDel.contains("<span class=\"delClass\">")) {
int delStIndex = splitContentDel.indexOf("<span class=\"delClass\">");
int delEdIndex = splitContentDel.indexOf("</span>");
if (delStIndex > -1) {
MarkTextVO markTextVO = new MarkTextVO();
markTextVO.setStartIndex(delSpiltIndex + delStIndex - (cirIndexDel*(stLenDel+edLenDel)));
markTextVO.setEndIndex(delSpiltIndex + delEdIndex - (cirIndexDel*(stLenDel+edLenDel)) - stLenDel);
delList.add(markTextVO);
delSpiltIndex = delSpiltIndex + delEdIndex + 7;
// String replaceStr = splitContentDel.substring(0,delStIndex);
splitContentDel = splitContentDel.substring(delEdIndex + 7,splitContentDel.length());
cirIndexDel++;
}
}
itemContent = itemContent.replaceAll("<span class=\"insertClass\">","");
itemContent = itemContent.replaceAll("</span>","");
itemContent = itemContent.replaceAll("<span class=\"delClass\">","");
itemContent = itemContent.replaceAll("</span>","");
}
return itemContent;
}
}