本帖最后由 chess3cake 于 2023-12-27 20:14 编辑
我使用以下代码循环查询是能够达到检索到所有可能单元格的目的。
- IRange usedRange = workbook.getWorksheets().get(0).getUsedRange();
- FindOptions findOptions = new FindOptions();
- findOptions.setLookIn(FindLookIn.Values);
- findOptions.setLookAt(LookAt.Part);
- IRange candidateTemplateCell = usedRange.find("{{", findOptions);
- while (candidateTemplateCell != null) {
- System.out.println(candidateTemplateCell.getValue());
- candidateTemplateCell = usedRange.find("{{", candidateTemplateCell, findOptions);
- }
复制代码
但是经过我的测试,find并不能支持正则表达式,如果我将上述代码中的find字符串从"{{"替换成"\\{\\{(.)+\\}\\}",该代码无法搜索到预期单元格。
有使用正则表达式进行搜索的案例分享一下吗,或者我有办法自定义匹配逻辑吗?
使用find这个api,和我自己遍历range拿到所有单元格进行评估,这两个方案之间有什么显著差异吗?
|