企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
``` import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import java.util.regex.Matcher; import java.util.regex.Pattern; @Slf4j public class StrUtil { public static void main(String[] args) { System.out.println(getNumbers("2人")); } /** * 获取字符串中的数字 * @param content 字符串 * @return 返回null 表示没有数字或者转为integer时报错 */ public static Integer getNumbers(String content) { Integer num = null; if (StringUtils.isBlank(content)) { return num; } // 表示匹配除了数字以外的内容 Pattern pattern = Pattern.compile("[^\\d]"); Matcher matcher = pattern.matcher(content); // 把匹配的内容替换为空字符串 String trim = matcher.replaceAll("").trim(); try { num = Integer.parseInt(trim); } catch (NumberFormatException e) { // 实际在同步数据时, 数据太多, 时间太长了, 去掉打印日志, 节约时间 // log.error("StrUtil getNumbers方法中 字符串转为数字报错, " + "传参:{}, 待转换字符串: {}, 报错信息: {}", content, trim, e.getMessage()); } finally { return num; } } } ```