package com.example.client.utils; import org.apache.commons.lang3.StringUtils; import java.math.BigDecimal; import java.util.regex.Matcher; import java.util.regex.Pattern; public class TranslateToPlainStrUtils { public static String translateToPlainStr(String number) { if (StringUtils.isBlank(number) ) { return number; } String regEx = "^([\\+|-]?\\d+(.{0}|.\\d+))[Ee]{1}([\\+|-]?\\d+)$"; // 编译正则表达式 Pattern pattern = Pattern.compile(regEx); Matcher matcher = pattern.matcher(number); // 字符串是否与正则表达式相匹配 boolean rs = matcher.matches(); // 判断是否为字符串的科学计数法 if (rs) { // 科学计数法转数字 BigDecimal originValue = new BigDecimal(number); return originValue.toPlainString(); } return number; } }