赞
踩
1 importjava.io.IOException;2 importjava.math.BigInteger;3 importjava.util.ArrayList;4 importjava.util.HashMap;5 importjava.util.Iterator;6 importjava.util.List;7 importjava.util.Map;8 importjava.util.regex.Matcher;9 importjava.util.regex.Pattern;10
11 importorg.apache.poi.POIXMLDocument;12 importorg.apache.poi.openxml4j.opc.OPCPackage;13 importorg.apache.poi.xwpf.usermodel.XWPFDocument;14 importorg.apache.poi.xwpf.usermodel.XWPFParagraph;15 importorg.apache.poi.xwpf.usermodel.XWPFRun;16 importorg.apache.poi.xwpf.usermodel.XWPFTable;17 importorg.apache.poi.xwpf.usermodel.XWPFTableCell;18 importorg.apache.poi.xwpf.usermodel.XWPFTableRow;19 importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTblWidth;20 importorg.openxmlformats.schemas.wordprocessingml.x2006.main.CTTcPr;21 importorg.openxmlformats.schemas.wordprocessingml.x2006.main.STTblWidth;22
23 /**
24 *25 *@authorunknown26 * @Date 2020年3月2日27 * @Time 下午1:41:3128 */
29 public classWord {30 /**
31 * 占位符初始依赖32 */
33 public static final String Symbol="$";34 /**
35 * 验证主体36 */
37 public static final Pattern findBody=Pattern.compile("(\\?\\{)([a-zA-Z0-9]+)(})".replace("?", Symbol));38 /**
39 * 验证附属主体-后半段40 */
41 public static final Pattern surplus=Pattern.compile("(\\{[a-zA-Z0-9]+}|[a-zA-Z0-9]+})");42 /**
43 * 文档主体-占位符确定后的截取行为依赖44 */
45 public static final Pattern keyInfo=Pattern.compile("[a-zA-Z0-9]+");46
47 /**
48 *49 *@authorunknown50 * @Date 2020年3月2日51 * @Time 下午1:42:1752 *@paramfileName 模板数据53 *@parammap 数据格式为Map54 *@paramempty 查找不到数据时用的占位55 *@paramignorecase 忽略大小写56 *@return
57 *@throwsIOException58 */
59 public static final XWPFDocument searchAndReplace(String fileName,Map map, String empty,boolean ignorecase) throwsIOException {60 returnsearchAndReplace(POIXMLDocument.openPackage(fileName),map,empty,ignorecase);61 }62 /**
63 * poi 查找word中占位符并替换64 *@authorunknown65 * @Date 2020年3月2日66 * @Time 下午1:41:4067 *@paramoPCPackage 模板数据68 *@parammap 数据格式为Map69 *@paramempty 查找不到数据时用的占位70 *@paramignorecase 忽略大小写71 *@return
72 *@throwsIOException73 */
74 public static final XWPFDocument searchAndReplace(OPCPackage oPCPackage,Map map, String empty,boolean ignorecase) throwsIOException {75 return searchAndReplace(newXWPFDocument(oPCPackage),map,empty,ignorecase);76 }77 /**
78 * poi 查找word中占位符并替换79 *@authorunknown80 * @Date 2020年2月28日81 * @Time 下午1:59:1982 *@paramDocument 模板数据83 *@parammap 数据格式为Map84 *@paramempty 查找不到数据时用的占位85 *@paramignorecase 忽略大小写86 *@returnXWPFDocument87 *@throwsIOException88 */
89 public static final XWPFDocument searchAndReplace(XWPFDocument Document,Map map, String empty,boolean ignorecase) throwsIOException {90 //对单行中存在多个的进行再次捕捉&#x
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。