1. 程式人生 > >駝峰和下劃線命令轉換

駝峰和下劃線命令轉換

import java.util.regex.Matcher;
import java.util.regex.Pattern;


public class Camel_UnderlineConverter {
	public static String camel4underline(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();
	}
	public static String underline2camel(String param){
		Pattern  p=Pattern.compile("_[a-z]");
		if(param==null ||param.equals("")){
			return "";
		}
		StringBuilder builder=new StringBuilder(param);
		Matcher mc=p.matcher(param.toLowerCase());
		int i = 0;
		while(mc.find()){
			builder.replace(mc.start()-i, mc.end()-i, mc.group(0).substring(1).toUpperCase());
			i++;
		}

		return builder.toString();
	}
public static void main(String[] args) {
	System.out.println(underline2camel("SAY_HELLO_WORLD".toLowerCase()));
}
}

相關推薦

駝峰劃線命令轉換

import java.util.regex.Matcher; import java.util.regex.Pattern; public class Camel_UnderlineConverter { public static String camel4und

springmvc配置MappingJackson2HttpMessageConverter實現屬性駝峰劃線轉換

v需求   php呼叫java介面時,因為php那邊的屬性都是下劃線風格,java這邊的屬性都是駝峰的風格。配置springmvc的json轉換,在requestBody的時候(呼叫物件的set 方法)將java屬性name對映成下劃線形式 和 請求的引數匹配;在respo

Java駝峰命名劃線命名轉換

import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 駝峰命名轉換 * * @author 47475 * */ public class Tool { private static Patte

java 駝峰劃線互轉

public class Tool{ private static Pattern linePattern = Pattern.compile(“_(\w)”); /*下劃線轉駝峰/ public stati

駝峰命名法(CamelCase)劃線風格(UnderScoreCase)字串之間的轉換工具類

public class CamelCaseUtils { private static final char SEPARATOR = '_'; public static String toUnderlineName(String s) {

駝峰命名法(CamelCase)劃線命名法(UnderScoreCase)字元之間的轉換

使用Guava CaseFormat類進行轉換 CaseFormat.UPPER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE,“ClassName”)-->class_name CaseFormat.LOWER_UNDERSCORE.to

駝峰命名劃線命名互轉php實現

res rst 命名 turn case rds rto step class 駝峰命名和下劃線命名經常需要互轉,下面提供兩種php的實現方式.第一種方法效率相對差一些,實現方式如下: //駝峰命名轉下劃線命名 function toUnderScore($str

劃線命名轉換駝峰命名(根據介面名查詢介面檔名)

見到一段程式碼實現的功能是:通過介面名驗證介面檔案是否存在。 舉個例子:介面名為:aa_bb_cc 介面檔名為 AbcAaBbCc.php 取這段程式碼稍作改造: <?php class FindFilename { /** $prefix 檔案字首 $Interfa

JAVA 駝峰劃線的屬性名互相轉換

public class StringUtil { /** * 轉換為下劃線 * * @param camelCaseName * @return */ public static String underscoreName(String camelCaseName)

駝峰命名法劃線風格的互轉

下劃線轉駝峰比較簡單,直接根據下劃線打散成陣列,每個子項首字元轉大寫,再做字串拼接即可。 駝峰轉下劃線風格,稍微複雜一些。剛開始我沒有思路,後來想到,可以遍歷字串,遇到大寫字母將其轉換成小寫,並在

jdk7的二進制整數劃線分隔符

int println pos alt string 技術 .com 技術分享 pre 1 //二進制整數: 2 public class TestBinaryNum{ 3 public static void main(String[] args) { 4

只能輸入英文數字劃線橫線的正則表示式

var reg="^[A-Za-z0-9-_]+$"  ; var regus = new RegExp(regs); regus.test("所要驗證的字串")  true 符合 false 不符合     中英文

Word調整文字劃線的間隔

工作環境(藍色粗體字為特別注意內容) 1,開發環境:Microsoft word 2007 2,參考文獻:https://blog.csdn.net/yiluyangguang1234/article/details/50158381  我們在使用Word編輯文件的時候,遇到有

Android之自定義EditText游標劃線顏色

最近在寫些小Demo複習基礎,在用到EditText的時候突然發現之前幾乎沒有注意到它的游標和下劃線的顏色,於是花了不少時間,看了不少部落格,現在就來總結和分享一下收穫。 1、第一印象:原生的EditText 我們要在原生的EditText上修改,首先當然要認識一下它的本來面目。在Andro

PHP不包括字母,數字劃線的webshell

文章目錄 前言 知識鋪墊 PHP中異或(^)概念 PHP取反(~)概念 不用數字構造數字 用字串自增,獲取字元 webshell php5和7的差異。 不用數字和字母的 shell

Android 如何使Tablayout內容劃線長度相同?

我們在使用Tablayout選項卡控制元件的時候經常要根據專案需求做一些改動,比如如何使Tablayout內容和下劃線長度相同,類似頭條選項卡那種。通常我們的策略是通過反射的機制去改變Tabview的長度。下面直接貼程式碼: public void setIndicator(){

規定密碼以字母開頭只能包含字母、數字劃線

轉自:http://www.softwhy.com/article-604-1.html 很多網站對於密碼的限制都有這麼一條,規定密碼只能夠以字母開頭,並且只能夠包含字母、數字和下劃線,並且還有一定的長度限制,下面就通過程式碼例項介紹一下如何使用正則表示式實現此限制。 程式碼例項如下: [J

java駝峰劃線劃線駝峰

package com.starry.test; import java.util.regex.Matcher; import java.util.regex.Pattern; public cl

Edittext去除游標劃線

設定 android:background="@null"隱藏下劃線,android:cursorVisible="false"隱藏游標,預設為TRUE <EditText

js正則驗證數字,字母劃線(至少包含其中兩種,數字不能開頭)

最近做了一個註冊驗證使用者名稱,要求數字,字母和下劃線(至少包含其中兩種,數字不能開頭),在網上找了好多例子,要麼只能實現字母和下劃線(數字不能開頭),要麼就只能實現數字,字母和特殊字元(至少包含其中兩種,數字不能開頭),無法排除其他的特殊字元,在嘗試了很多次以後,我試著將這兩種情況的判