/**
-
校驗用戶名判斷:頭部尾部不能使空格,不能是中文,不能使全角,不能有星號,長度6-16 其實 中文 和 全角 的 new
-
String(charStr.getBytes(“UTF-8”),“8859_1”).getBytes().length=6
-
字母、數(shù)字、特殊符號new
-
String(charStr.getBytes(“UTF-8”),“8859_1”).getBytes().length=1
*/
public static boolean validateUserName(String username) {
/**
- 長度6-16
*/
if (!((username.length() >= 6) && (username.length() <= 16))) {
return false;
}
/**
- 頭部不能有空格
*/
if (username.substring(0, 1).equals(" ")) {// 頭部有空格
System.out.println(33);
return false;
}
/**
- 未部不能有空格
*/
if (username.endsWith(" ")) {// 未部有空格
return false;
}
if (username.contains(" ")) {// 不能含有
return false;
}
/**
- 不能有中文
*/
Pattern pattern1 = Pattern.compile(“[^\u4E00-\u9FA5]*”); // 不是中文
Matcher m1 = pattern1.matcher(username);
if (!m1.matches()) {
return false;
}
/**
- 不能有*號
*/
pattern1 = Pattern.compile(“[^\]”); // 不是*號
m1 = pattern1.matcher(username);
if (!m1.matches()) {
return false;
}
/**
- 不能是純數(shù)字
*/
pattern1 = Pattern.compile(“1\d*$”);
m1 = pattern1.matcher(username);
return !m1.matches();
}
/**
- 校驗用戶密碼:字母,數(shù)字,特殊字符,至少兩種,6-16個字符
*/
public static boolean validateUserPassword(String passport) {
Pattern pattern1 = Pattern.compile(“[0-9]*”); // 數(shù)字[0-9]+?
Matcher m1 = pattern1.matcher(passport);
pattern1 = Pattern.compile(“.[a-zA-Z].”); // 字母
Matcher m2 = pattern1.matcher(passport);
pattern1 = Pattern.compile(“.[^a-zA-Z0-9].”); // 非字母和數(shù)字
Matcher m3 = pattern1.matcher(passport);
pattern1 = Pattern.compile(“[^\u4E00-\u9FA5]*”); // 不是中文
Matcher m4 = pattern1.matcher(passport);
// 長度6-16
if (!((passport.length() >= 6) && (passport.length() <= 16))) {
return true;
}
/**
- 純數(shù)字
*/
if (m1.matches()) {
return true;
}
/**
- 必須是:字母和數(shù)字
**/
if (m1.matches() && m2.matches() && m4.matches()) {
return true;
}
/**
- 必須是:數(shù)字和特殊符號
**/
if (m1.matches() && m3.matches() && m4.matches()) {
return true;
}
/**
- 必須是:字母和特殊符號
**/
return m2.matches() && m3.matches() && m4.matches();
}
public static int validateUserPasswords(String passport) {
passport = new String(passport.getBytes());
java.util.regex.Pattern pattern2 = java.util.regex.Pattern.compile(“[\u4e00-\u9fa5]+”);
java.util.regex.Matcher match2 = pattern2.matcher(passport);
if (match2.find() == true) {
return 1;
}
java.util.regex.Pattern pattern3 = java.util.regex.Pattern.compile(“[\s\u4e00-\u9fa5]”);
java.util.regex.Matcher match3 = pattern3.matcher(passport);
if (match3.find() == true) {
return 2;
}
java.util.regex.Pattern pattern4 = java.util.regex.Pattern.compile(“\*”);
java.util.regex.Matcher match4 = pattern4.matcher(passport);
if (match4.find()) {
return 3;
}
return 0;
}
/**
- 校驗手機
*/
public static boolean validatePhone(String phone) {
Pattern pattern1 = Pattern.compile(“^1[34578]\d{9}$”);
Matcher m1 = pattern1.matcher(phone);
return m1.matches();
}
/**
- 校驗郵箱
*/
自我介紹一下,小編13年上海交大畢業(yè),曾經(jīng)在小公司待過,也去過華為、OPPO等大廠,18年進入阿里一直到現(xiàn)在。
深知大多數(shù)初中級Android工程師,想要提升技能,往往是自己摸索成長或者是報班學習,但對于培訓機構(gòu)動則近萬的學費,著實壓力不小。自己不成體系的自學效果低效又漫長,而且極易碰到天花板技術(shù)停滯不前!
因此收集整理了一份《2024年Android移動開發(fā)全套學習資料》,初衷也很簡單,就是希望能夠幫助到想自學提升又不知道該從何學起的朋友,同時減輕大家的負擔。
既有適合小白學習的零基礎資料,也有適合3年以上經(jīng)驗的小伙伴深入學習提升的進階課程,基本涵蓋了95%以上Android開發(fā)知識點,真正體系化!
由于文件比較大,這里只是將部分目錄截圖出來,每個節(jié)點里面都包含大廠面經(jīng)、學習筆記、源碼講義、實戰(zhàn)項目、講解視頻,并且會持續(xù)更新!
如果你覺得這些內(nèi)容對你有幫助,可以掃碼獲?。。。▊渥ⅲ篈ndroid)

作者2013年從java開發(fā),轉(zhuǎn)做Android開發(fā),在小廠待過,也去過華為,OPPO等大廠待過,18年四月份進了阿里一直到現(xiàn)在。
參與過不少面試,也當面試官 面試過很多人。深知大多數(shù)初中級Android工程師,想要提升技能,往往是自己摸索成長,不成體系的學習效果低效漫長,而且極易碰到天花板技術(shù)停滯不前!
我整理了一份阿里P7級別的最系統(tǒng)的Android開發(fā)主流技術(shù),特別適合有3-5年以上經(jīng)驗的小伙伴深入學習提升。
主要包括阿里,以及字節(jié)跳動,騰訊,華為,小米,等一線互聯(lián)網(wǎng)公司主流架構(gòu)技術(shù)。如果你想深入系統(tǒng)學習Android開發(fā),成為一名合格的高級工程師,可以收藏一下這些Android進階技術(shù)選型
我搜集整理過這幾年阿里,以及騰訊,字節(jié)跳動,華為,小米等公司的面試題,把面試的要求和技術(shù)點梳理成一份大而全的“ Android架構(gòu)師”面試 Xmind(實際上比預期多花了不少精力),包含知識脈絡 + 分支細節(jié)。
Java語言與原理;
大廠,小廠。Android面試先看你熟不熟悉Java語言
高級UI與自定義view;
自定義view,Android開發(fā)的基本功。
性能調(diào)優(yōu);
數(shù)據(jù)結(jié)構(gòu)算法,設計模式。都是這里面的關(guān)鍵基礎和重點需要熟練的。
NDK開發(fā);
未來的方向,高薪必會。
前沿技術(shù);
組件化,熱升級,熱修復,框架設計
網(wǎng)上學習 Android的資料一大堆,但如果學到的知識不成體系,遇到問題時只是淺嘗輒止,不再深入研究,那么很難做到真正的技術(shù)提升。希望這份系統(tǒng)化的技術(shù)體系對大家有一個方向參考。
我在搭建這些技術(shù)框架的時候,還整理了系統(tǒng)的高級進階教程,會比自己碎片化學習效果強太多,CodeChina上可見;
當然,想要深入學習并掌握這些能力,并不簡單。關(guān)于如何學習,做程序員這一行什么工作強度大家都懂,但是不管工作多忙,每周也要雷打不動的抽出 2 小時用來學習。
不出半年,你就能看出變化!
《互聯(lián)網(wǎng)大廠面試真題解析、進階開發(fā)核心學習筆記、全套講解視頻、實戰(zhàn)項目源碼講義》點擊傳送門即可獲??!文章來源:http://www.zghlxwxcb.cn/news/detail-857226.html
不成體系,遇到問題時只是淺嘗輒止,不再深入研究,那么很難做到真正的技術(shù)提升。希望這份系統(tǒng)化的技術(shù)體系對大家有一個方向參考。
我在搭建這些技術(shù)框架的時候,還整理了系統(tǒng)的高級進階教程,會比自己碎片化學習效果強太多,CodeChina上可見;
當然,想要深入學習并掌握這些能力,并不簡單。關(guān)于如何學習,做程序員這一行什么工作強度大家都懂,但是不管工作多忙,每周也要雷打不動的抽出 2 小時用來學習。
不出半年,你就能看出變化!
《互聯(lián)網(wǎng)大廠面試真題解析、進階開發(fā)核心學習筆記、全套講解視頻、實戰(zhàn)項目源碼講義》點擊傳送門即可獲取!
-
1-9 ??文章來源地址http://www.zghlxwxcb.cn/news/detail-857226.html
到了這里,關(guān)于android 校驗用戶名密碼手機郵箱身份證郵編等的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!