您当前的位置: 首页 >  学无止境 >  文章详情

java 驼峰转下划线、提取一个字符串中的整数和小数部分

时间: 2023-06-06 【学无止境】 阅读量:共1521人围观

简介 记录两个小工具 1.java 驼峰转下划线 2.提取一个字符串中的整数和小数部分

驼峰转下划线

/** * 驼峰转下划线 * userName ----> user_name * user_name ----> user_name * * @param camelCaseStr 驼峰字符串 * @return 带下滑线的String */ public static String toUnderlineCase(String camelCaseStr) { if (camelCaseStr == null) { return null; } // 将驼峰字符串转换成数组 char[] charArray = camelCaseStr.toCharArray(); StringBuffer buffer = new StringBuffer(); //处理字符串 for (int i = 0, l = charArray.length; i < l; i++) { if (charArray[i] >= 65 && charArray[i] <= 90) { buffer.append("_").append(charArray[i] += 32); } else { buffer.append(charArray[i]); } } return buffer.toString().replaceAll("_(.*)","$1"); }

提取一个字符串中的整数和小数部分

/** * 功能描述: 提取一个字符串中的整数和小数部分 * @Param: [str] * @Return: java.lang.String * @Author: zhangfuxiang * @Date: 2022/6/1 11:00 */ public static String getNumber(String str) { // 需要取整数和小数的字符串 // 控制正则表达式的匹配行为的参数(小数) Pattern p = Pattern.compile("(\\d+\\.\\d+)"); //Matcher类的构造方法也是私有的,不能随意创建,只能通过Pattern.matcher(CharSequence input)方法得到该类的实例. Matcher m = p.matcher(str); //m.find用来判断该字符串中是否含有与"(\\d+\\.\\d+)"相匹配的子串 if (m.find()) { //如果有相匹配的,则判断是否为null操作 //group()中的参数:0表示匹配整个正则,1表示匹配第一个括号的正则,2表示匹配第二个正则,在这只有一个括号,即1和0是一样的 str = m.group(1) == null ? "" : m.group(1); } else { //如果匹配不到小数,就进行整数匹配 p = Pattern.compile("(\\d+)"); m = p.matcher(str); if (m.find()) { //如果有整数相匹配 str = m.group(1) == null ? "" : m.group(1); } else { //如果没有小数和整数相匹配,即字符串中没有整数和小数,就设为空 str = ""; } } return str; }
文章评论
总共 0 条评论
这篇文章还没有收到评论,赶紧来抢沙发吧~
Copyright (C) 2023- 小祥驿站 保留所有权利 蜀ICP备 17034318号-2  公安备案号 50010302004554