JAVA 判斷是否連續(xù)字母或者數(shù)字

來源:http://itssh.cn/post/943.html

JAVA實現(xiàn)連續(xù)字母或者數(shù)字:
實現(xiàn)思路:統(tǒng)一轉(zhuǎn)成ASCII進行計數(shù)判斷哥倔,純數(shù)字、純字母
//純數(shù)字(數(shù)字0 -- 數(shù)字9,對應(yīng)ASCII為48 -- 57)
//大寫純字母(大寫字母A -- 大寫字母Z,對應(yīng)ASCII為65 -- 90)
//小寫純字母(小寫字母a -- 小寫字母z捞蛋,對應(yīng)ASCII為97 -- 122)

案例:

package cn.sunmeng.utils;

/**
 * @ClassName: SimpleLetterAndNumCheck.java
 * @Description: JAVA實現(xiàn)連續(xù)字母或者數(shù)字:<br/>
                實現(xiàn)思路:統(tǒng)一轉(zhuǎn)成ASCII進行計數(shù)判斷,純數(shù)字、純字母<br/>
                        //純數(shù)字(數(shù)字0 -- 數(shù)字9,對應(yīng)ASCII為48 -- 57)<br/>
                        //大寫純字母(大寫字母A -- 大寫字母Z,對應(yīng)ASCII為65 -- 90)<br/>
                      //小寫純字母(小寫字母a -- 小寫字母z饲嗽,對應(yīng)ASCII為97 -- 122)<br/>
 * @author: SM(sm0210@qq.com)
 * @date: 2017年5月28日 上午10:37:22
 */
public class SimpleLetterAndNumCheck {

    /**
     * SM 校驗字符串連續(xù)多少位是純數(shù)字或者純字母,默認6位(字母區(qū)分大小寫)
     * @param password 密碼
     * @return
     */
    public static boolean simpleLetterAndNumCheck(String value){
        //
        return SimpleLetterAndNumCheck.simpleLetterAndNumCheck(value, 6);
    }
    /**
     * SM 校驗字符串連續(xù)多少位是純數(shù)字或者純字母奈嘿,默認6位(字母區(qū)分大小寫)
     * @param password 密碼   
     * @param length    校驗長度,默認6為
     * @return
     */
    public static boolean simpleLetterAndNumCheck(String value, int length){
        //是否不合法
        boolean isValidate = false;
        //
        int i = 0;
        //計數(shù)器
        int counter = 1;
        //
        for(; i < value.length() -1;) {
            //當(dāng)前ascii值
            int currentAscii = Integer.valueOf(value.charAt(i));
            //下一個ascii值
            int nextAscii = Integer.valueOf(value.charAt(i + 1));
            //滿足區(qū)間進行判斷
            if( (SimpleLetterAndNumCheck.rangeInDefined(currentAscii, 48, 57) || SimpleLetterAndNumCheck.rangeInDefined(currentAscii, 65, 90) || SimpleLetterAndNumCheck.rangeInDefined(currentAscii, 97, 122)) 
                    && (SimpleLetterAndNumCheck.rangeInDefined(nextAscii, 48, 57) || SimpleLetterAndNumCheck.rangeInDefined(nextAscii, 65, 90) || SimpleLetterAndNumCheck.rangeInDefined(nextAscii, 97, 122)) ) {
                //計算兩數(shù)之間差一位則為連續(xù)
                if(Math.abs((nextAscii - currentAscii)) == 1){
                    //計數(shù)器++
                    counter++;
                }else{
                    //否則計數(shù)器重新計數(shù)
                    counter = 1;
                }
            }
            //滿足連續(xù)數(shù)字或者字母
            if(counter >= length) return !isValidate;
            //
            i++;
        }
        
        //
        return isValidate;
    }
    
    /**
     * SM 判斷一個數(shù)字是否在某個區(qū)間
     * @param current 當(dāng)前比對值
     * @param min   最小范圍值
     * @param max   最大范圍值
     * @return
     */
    public static boolean rangeInDefined(int current, int min, int max) {
        //
        return Math.max(min, current) == Math.min(current, max);
    }
    
    /**
     * 
     * @param args
     */
    public static void main(String[] args) {
        //
        //String str = "1234677A!@#B0abcdeg123456DDzZ09";
        //連續(xù)不合法區(qū)間值校驗
        String str = ":;<=>?@A";
        //
        boolean validate = SimpleLetterAndNumCheck.simpleLetterAndNumCheck(str);
        //
        if(validate){
            System.out.println("連續(xù)字母或者數(shù)字");
        }else {
            System.out.println("合法的校驗");
        }
    }
}

來源:http://itssh.cn/post/943.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末貌虾,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子裙犹,更是在濱河造成了極大的恐慌尽狠,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,104評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件叶圃,死亡現(xiàn)場離奇詭異袄膏,居然都是意外死亡,警方通過查閱死者的電腦和手機掺冠,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,816評論 3 399
  • 文/潘曉璐 我一進店門沉馆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人德崭,你說我怎么就攤上這事斥黑。” “怎么了接癌?”我有些...
    開封第一講書人閱讀 168,697評論 0 360
  • 文/不壞的土叔 我叫張陵心赶,是天一觀的道長。 經(jīng)常有香客問我缺猛,道長缨叫,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,836評論 1 298
  • 正文 為了忘掉前任荔燎,我火速辦了婚禮耻姥,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘有咨。我一直安慰自己琐簇,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 68,851評論 6 397
  • 文/花漫 我一把揭開白布座享。 她就那樣靜靜地躺著婉商,像睡著了一般。 火紅的嫁衣襯著肌膚如雪渣叛。 梳的紋絲不亂的頭發(fā)上丈秩,一...
    開封第一講書人閱讀 52,441評論 1 310
  • 那天,我揣著相機與錄音淳衙,去河邊找鬼蘑秽。 笑死饺著,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的肠牲。 我是一名探鬼主播幼衰,決...
    沈念sama閱讀 40,992評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼缀雳!你這毒婦竟也來了渡嚣?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,899評論 0 276
  • 序言:老撾萬榮一對情侶失蹤肥印,失蹤者是張志新(化名)和其女友劉穎严拒,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體竖独,經(jīng)...
    沈念sama閱讀 46,457評論 1 318
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,529評論 3 341
  • 正文 我和宋清朗相戀三年挤牛,在試婚紗的時候發(fā)現(xiàn)自己被綠了莹痢。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,664評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡墓赴,死狀恐怖竞膳,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情诫硕,我是刑警寧澤坦辟,帶...
    沈念sama閱讀 36,346評論 5 350
  • 正文 年R本政府宣布,位于F島的核電站章办,受9級特大地震影響锉走,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜藕届,卻給世界環(huán)境...
    茶點故事閱讀 42,025評論 3 334
  • 文/蒙蒙 一挪蹭、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧休偶,春花似錦梁厉、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,511評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至碱妆,卻和暖如春肉盹,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背山橄。 一陣腳步聲響...
    開封第一講書人閱讀 33,611評論 1 272
  • 我被黑心中介騙來泰國打工垮媒, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留舍悯,地道東北人。 一個月前我還...
    沈念sama閱讀 49,081評論 3 377
  • 正文 我出身青樓睡雇,卻偏偏與公主長得像萌衬,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子它抱,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,675評論 2 359

推薦閱讀更多精彩內(nèi)容

  • CTF中那些腦洞大開的編碼和加密 0x00 前言 正文開始之前先閑扯幾句吧秕豫,玩CTF的小伙伴也許會遇到類似這樣的問...
    查無此人asdasd閱讀 6,024評論 0 19
  • 0x01 目錄 常見編碼: ASCII編碼 Base64/32/16編碼 shellcode編碼 Quoted-p...
    H0f_9閱讀 12,814評論 2 17
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)观蓄,斷路器混移,智...
    卡卡羅2017閱讀 134,704評論 18 139
  • 八、睡覺場景 1侮穿、Who'sasleep?Takeapeep!(takeapeep,就是偷看一眼) 2歌径、Peeka...
    wk悟空媽媽芳香母嬰閱讀 769評論 0 0
  • 日本之行第四天---京都夢館和清水寺。夢館是京都一家有名的和服租賃及照相的場館亲茅。每天有很多全世界各國游客來此租賃...
    杏子心語閱讀 545評論 0 0