replaceAll的坑

System.out.println("aaa abc ddd abc abc ".replaceAll(" abc ", " "));

output:

aaa ddd abc 

注意,replaceAll内部实现是Pattern.compile(regex).matcher(this).replaceAll(replacement);

在替换之后,寻找下次匹配时,是从替换之后的下一个字符开始的


private String extractImageText(MultipartFile file) { try (InputStream is = file.getInputStream()) { BufferedImage image = ImageIO.read(is); if (image == null) { return MessageUtils.message("Image.parsing.failed"); } //OCR识别 String result = tesseract.doOCR(image); result = postProcess(result); result = result.replaceAll("\\s+", " ").trim(); System.out.println("图片内容:\n" + result); return result; } catch (Exception e) { e.printStackTrace(); return MessageUtils.message("file.read.picture.error"); } } 我的代码 但是我的读取内容 不准确 因为上下内容有点紧密 PALLET_ID|KNBOXNO|CARRIER|COC|CTRY|HAWB|PO|ORIGIN|INVOICENO|CARTONS|SHIPID|SHIP_DATE|TEL|SSCC|RETURN_TO1|RETURN_TO2|RETURN_TO3|RETURN_TO4|RETURN_TO5|RETURN_TO6|RETURN_TO7|RETURN_TO8|SHIP_TO1|SHIP_TO2|SHIP_TO3|SHIP_TO4|SHIP_TO5|SHIP_TO6|SHIP_TO7|SHIP_TO8|LINEITEM1|MPN1|QTY1|LINEITEM2|MPN2|QTY2|LINEITEM3|MPN3|QTY3| CW240823000002||SCH-AS|CZ|CZ|SHA89103188|0618330257|STANDARD BULK|SHA89103188|1-1/1|26624340010001|22/08/2024|00000000|109959071017619247|Please contact:|ADI EMEIA Logistics|Inbound Department||||||Luxsan Technology Limited|C/o Schenker Logistics (CZ) spol s.r.o.|Za Panskou zahradou 1018|252 19 Rudna Czech Republic|||||00020|MGDX3ZD/A|10| 这个是图片实际的内容 CARRIER COC/POE CTRY [scH-as 1c [cz | If Undeliverable Return to: Ship to Tel: 00000000 Please contact: , 、 Luxsan Technology Limited ADI EMEIA Logistics C/o Schenker Logistics 咽 spol s.r.0, Inbound Department Za Panskou zahradou 101 252 19 Rudna Czech Republic ORIGIN CARTONS SHIP DATE STANDARD BULK/1 01/17/2018 anes: 用 用 朋 智 用 用 网 才 SHA89103188 Sale# Delivery# Web# PO# 0618330257 Line item Part Number Quantity 00020 MGDX3ZD/A 10 园 园 山 川 川 伟 伟 伟 26624340010001 sscc IHW AO RA Rev A 00109959071017619247 ence of | || IIR OLE这个是我的读取的内容 图片里面的内容紧密的话就不准确了 有什么解决办法 让我解决一下
最新发布
07-23
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值