안 드 로 이 드 사용자 가 등록 하거나 로그 인 할 때 입력 한 것 이 정확 한 형식의 전화번호 인지 판단 합 니 다.
Pattern: 하나의 Pattern 은 정규 표현 식 이 컴 파일 된 표현 방식 입 니 다. Matcher: 하나의 Matcher 대상 은 상태 기기 입 니 다. Pattern 대상 에 따라 일치 하 는 모드 로 문자열 에 대해 일치 하 는 검 사 를 합 니 다.
먼저 Pattern 으로 정규 표현 식 을 만 듭 니 다.
(Pattern 클래스 는 정규 표현 식 을 만 드 는 데 사 용 됩 니 다. 일치 하 는 모드 를 만 드 는 데 도 사 용 됩 니 다. 구조 방법 은 개인 적 이 고 직접 만 들 수 없 지만 Pattern. coplie (String regex) 간단 한 공장 방법 으로 정규 표현 식 을 만 들 수 있 습 니 다)
Pattern p = Pattern.compile("^((14[0-9])|(13[0-9])|(15[0-9])|(18[0-9])|(17[0-9]))\\d{8}$");
여기 서 대표 전화 번 호 는 반드시 14, 13, 15, 18, 17 로 시작 하 는 11 자리 로 자신의 수요 에 따라 수정 할 수 있다.
그리고 Matcher 의 boolean matches () 방법 으로 전체 대상 문자 에 대해 일치 하 는 검 사 를 하고 전체 대상 문자열 이 완전히 일치 할 때 만 실제 값 을 되 돌려 줍 니 다.
Matcher m = p.matcher(inputText);
마지막 으로 boolean 을 되 돌려 서 true 인지 아 닌 지 를 판단 합 니 다.
return m.matches();
마지막 으로 전체 코드 붙 이기:
public class Utils {
/**
* .
*
* @param inputText the input text
* @return true, if is phone
*/
public static boolean isPhone(String inputText) {
Pattern p = Pattern.compile("^((14[0-9])|(13[0-9])|(15[0-9])|(18[0-9])|(17[0-9]))\\d{8}$");
Matcher m = p.matcher(inputText);
return m.matches();
}
String userphone = phone.getText().toString().trim();
if (TextUtils.isEmpty(userphone)) {
Toast.makeText(LoginActivity.this, " ", Toast.LENGTH_SHORT).show();
return;
}
boolean result = Utils.isPhone(userphone);
if (result == false) {
Toast.makeText(LoginActivity.this, " ", Toast.LENGTH_SHORT).show();
return;
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.