处理金钱文字转换

main
xueqingkun 1 year ago
parent 18ba680aae
commit c9aac7336d

@ -136,8 +136,12 @@ public class RobotTalkServiceImpl implements RobotTalkService {
* @param input * @param input
* @return * @return
*/ */
private String digitToChineseAmount(String input){ private String numberToChinese(String input){
String regex = "(\\d+(\\.\\d+)?)(?=元|万元)";
if (StrUtil.isEmpty(input)){
return input;
}
String regex = "(\\d+(\\.\\d+)?)(?=元|万元|亿元|个)";
Pattern pattern = Pattern.compile(regex); Pattern pattern = Pattern.compile(regex);
Matcher matcher = pattern.matcher(input); Matcher matcher = pattern.matcher(input);
@ -223,7 +227,7 @@ public class RobotTalkServiceImpl implements RobotTalkService {
if (StrUtil.isEmpty(message)) { if (StrUtil.isEmpty(message)) {
return null; return null;
} }
String translate = digitToChineseAmount(message); String translate = numberToChinese(message);
TtsResultDTO resultDTO = voiceService.textToVoice(translate); TtsResultDTO resultDTO = voiceService.textToVoice(translate);
IrVoice irVoice = new IrVoice(); IrVoice irVoice = new IrVoice();
irVoice.setVoiceBase64(resultDTO.getAudio()); irVoice.setVoiceBase64(resultDTO.getAudio());

Loading…
Cancel
Save