From c9aac7336d0834f86cfda1ed17587a0c6cc6799a Mon Sep 17 00:00:00 2001 From: xueqingkun Date: Mon, 8 Apr 2024 09:19:34 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=84=E7=90=86=E9=87=91=E9=92=B1=E6=96=87?= =?UTF-8?q?=E5=AD=97=E8=BD=AC=E6=8D=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../supervision/service/impl/RobotTalkServiceImpl.java | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/supervision/service/impl/RobotTalkServiceImpl.java b/src/main/java/com/supervision/service/impl/RobotTalkServiceImpl.java index 2211db8..05adf5a 100644 --- a/src/main/java/com/supervision/service/impl/RobotTalkServiceImpl.java +++ b/src/main/java/com/supervision/service/impl/RobotTalkServiceImpl.java @@ -136,8 +136,12 @@ public class RobotTalkServiceImpl implements RobotTalkService { * @param input * @return */ - private String digitToChineseAmount(String input){ - String regex = "(\\d+(\\.\\d+)?)(?=元|万元)"; + private String numberToChinese(String input){ + + if (StrUtil.isEmpty(input)){ + return input; + } + String regex = "(\\d+(\\.\\d+)?)(?=元|万元|亿元|个)"; Pattern pattern = Pattern.compile(regex); Matcher matcher = pattern.matcher(input); @@ -223,7 +227,7 @@ public class RobotTalkServiceImpl implements RobotTalkService { if (StrUtil.isEmpty(message)) { return null; } - String translate = digitToChineseAmount(message); + String translate = numberToChinese(message); TtsResultDTO resultDTO = voiceService.textToVoice(translate); IrVoice irVoice = new IrVoice(); irVoice.setVoiceBase64(resultDTO.getAudio());