`

驼峰格式和下划线格式字符串相互转换

 
阅读更多
	/**
	 * @param strs
	 *        待转化字符串
	 * @return
	 * @author estone
	 * @description 下划线格式字符串转换成驼峰格式字符串
	 *              eg: player_id -> playerId;<br>
	 *              player_name -> playerName;
	 */
	public static String underScore2CamelCase(String strs) {
		String[] elems = strs.split("_");
		for ( int i = 0 ; i < elems.length ; i++ ) {
			elems[i] = elems[i].toLowerCase();
			if (i != 0) {
				String elem = elems[i];
				char first = elem.toCharArray()[0];
				elems[i] = "" + (char) (first - 32) + elem.substring(1);
			}
		}
		for ( String e : elems ) {
			System.out.print(e);
		}
		return elems.toString();
	}

	/**
	 * @param param
	 *        待转换字符串
	 * @return
	 * @author estone
	 * @description 驼峰格式字符串 转换成 下划线格式字符串
	 *              eg: playerId -> player_id;<br>
	 *              playerName -> player_name;
	 */
	public static String camelCase2Underscore(String param) {
		Pattern p = Pattern.compile("[A-Z]");
		if (param == null || param.equals("")) {
			return "";
		}
		StringBuilder builder = new StringBuilder(param);
		Matcher mc = p.matcher(param);
		int i = 0;
		while (mc.find()) {
			builder.replace(mc.start() + i,mc.end() + i,"_" + mc.group().toLowerCase());
			i++;
		}
		if ('_' == builder.charAt(0)) {
			builder.deleteCharAt(0);
		}
		return builder.toString();
	}

 

分享到:
评论

相关推荐

    Java开发必备:驼峰与下划线字符串快速互转工具类支持多列编辑复制转换

    4、该工具类采用了Java的开发语言,代码清晰易懂,可以快速实现字符串转换的功能,无论是初学者还是有经验的Java开发人员都可以轻松掌握。 5、使用方法: 5.1、可以单独复制一个单子,粘贴到对应的参数上,执行...

    C#转换驼峰格式--首字母大写,可直接ctrl+v,支持跳过字符串

    C#转换驼峰格式--首字母大写,可直接ctrl+v,支持跳过字符串 输入:2D_3D_23d_IB_REQUEST_OBSTACLES_GET_STATIC_OBJECTS_1_MESSAGE_STRUCT_SIZE_2D 结果:2D3D23dIBRequestObstaclesGetStaticObjects1...

    Java中驼峰与下划线相互转换

    1、驼峰命名法 /** * 驼峰式命名法 */ public static String toCamelCase(String s) { if (s == null) { return null; } s = s.toLowerCase(); StringBuilder sb = new StringBuilder(s.length()); boolean ...

    Go语言json编码驼峰转下划线、下划线转驼峰的实现

    golang默认的结构体json转码出来,都是根据字段名生成的大写驼峰格式,但是一般我们最常用的json格式是小写驼峰或者小写下划线,因此,我们非常需要一个统一的方法去转换,而不想挨个写json标签,例如 package main...

    蚂蚁-前端-笔试题.js

    原生js操作:驼峰格式和下划线格式互转,json字符串转换……五道题,带答案

    反射工具类 + 自定义的用于标注字段含义的注解.zip

    ReflectionUtils :反射工具类,包括 --- 通过反射获取实体类中的字段及其中文注释 ...--- 驼峰格式字符串转换为下划线格式字符串 ColumnExplain: 使用在实体类字段上,用于标注字段含义,且可以通过反射获取含义

    java基础工具类iceroot

    涵盖了 字符串操作 时间转化 读取配置文件 等方面. 基础工具类对于java代码的编写是非常必要的,然 而很多常见的操作在很多第三方类库中并未提供,我们必须一遍又一遍的重新编写. 此api补充了第三方 基础工具类缺失...

    symbol-munger:一个通用的 lisp 库,可帮助将英语和 lisp 符号相互转换为各种格式

    lisp、英语、下划线和驼峰式大小写用于将数据库列名转换为 lisp 符号和英文列标题名用于在常用 lisp 变量名和 javascript 变量名之间进行转换沿途删除多余的单词分隔符 (:foo--bar =&gt; "Foo Bar") 所有转换“-&gt;”函数...

    ThinkPHP+工具箱源码

    JSON格式化、压缩转义、生成C#、Java、Go实体类、SQL转Java实体类、XML和JSON互转、Excel/CSV转JSON、JSON转Excel/CSV、JSON和GET参数互转、JSON转YAML、HTML/CSS/JS格式化/压缩、加解密编码、MD5加密、URL编码、...

    javascript入门笔记

    特点:将 a 和 b 先转换为二进制,按位操作,对应位置上的两个数字,相同时,该位整体结果为0,不同时,该位的整体结果为 1 使用场合:快速交换两个数字 5 ^ 3 101 011 ========== 110 结果为 6 练习: ...

Global site tag (gtag.js) - Google Analytics