Et Voil à | 내일 당신 이 쓴 정규 표현 식 을 생각 할 수 있 습 니까?
정규적인 정 의 는 중복 되 지 않 고 모두 가 찾 을 수 있다.정규 표현 식 은 모형 이나 규범 을 제시 한 다음 에 문자열 이 이 규범 과 일치 하 는 지 확인 하고 결과 에 따라 다음 처 리 를 하 는 것 이다.
정규 표현 식 의 상용 기호
다음은 정규 표현 식 에서 가장 자주 사용 하 는 기호 에 대한 해석 입 니 다.
무엇 을 원 하 십 니까?
[], 중 괄호 는 이 위치 에 어떤 문자 가 나타 나 는 지 규범 에 부합 되 고 받 아들 일 수 있 음 을 나타 낸다.그것 은 끼 워 넣 어서 사용 할 수 있다.
표현 식
속뜻
[123]
여기 1, 2, 3 이 필요 해 요. 다른 건 안 돼 요.
[0-9]
여기 숫자 가 필요 해 요.
[a-cA-C]
여기 서 나 는 a 에서 c 또는 A 에서 C, 즉 두 범위 의 집합 이 필요 하 다.
[^abc]
a, b, c 를 제외 하고 모두 가능 합 니 다.
[a-c&&[^bc]]
& & 두 범위 의 교 집합 은 a 에서 c 까지 b, c, 즉 a 를 포함 하지 않 음 을 나타 낸다.
몇 개 드릴 까요?
더 정확 한 정규 가 필요 할 때 어떤 문자 가 몇 번 나타 나 야 하 는 지 정의 해 야 할 때 도 있 습 니 다. 이것 도 정규 가 실현 할 수 있 습 니 다.
표현 식
속뜻
...
점 은 임 의 문 자 를 나타 내 고 세 점 즉 세 글자 입 니 다. 아무 거나 주세요. 하지만 꼭 세 개 주세요.
y?
y 한 번 또는 0 번 출현 (x < = 1)
y*
y 0 회 또는 여러 번 출현 (x > = 0)
y+
y 한 번 또는 여러 번 나타 나 기 (x > = 1)
y{n}?
y n 회 출현 (x = n)
y{n,}?
y 최소 n 회 출현 (x > = n)
y{n,m}?
y n ~ m 회 출현 (n < = x < = m)
처음부터 끝까지
정규 표현 식 은 경계 문 제 를 규정 하여 일치 하 는 것 을 더욱 정확 하 게 할 수 있 습 니 다.
표현 식
속뜻
^
줄 의 첫머리
$
행 의 끝
\b
단어 경계
\B
비 단어 경계
경계 문 제 는 다른 표현 식 도 있 지만 사용 이 적 습 니 다. 여 기 는 모두 열거 되 지 않 습 니 다. 단어 경계 에 대해 서 는 다음 대황 이 예 를 들 어 보 겠 습 니 다.
은어
복잡 하지만 자주 사용 되 는 규범 에 직면 하여 정규 표현 식 은 간단 하고 통속 적 인 서법 도 제공 합 니 다. 이런 것들 을 기억 하면 우리 가 표현 식 을 크게 간소화 하 는 데 도움 이 될 것 입 니 다.
표현 식
속뜻
\d
숫자.
\D
비 숫자
\s
공백 문자
\S
공백 문자
\w
단어 문자 (단어 문 자 는 "" 포함)
\W
비 단어 문자
정규 표현 식
자, 우리 두 줄 을 쓰 자.대황 은 자바 로 밤 을 든다.우선, 자바 와 정규 표현 식 이 가장 밀접 하 게 연 결 된 세 가지 유형 은 그들 이 아 닐 수 없습니다.
노란색 붙 이기 테스트:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class regExp {
public static void main(String[] args) {
// Pattern ,
Pattern p = Pattern.compile("[a-z]{3}");
// ,
Matcher m = p.matcher("abc");
// matches()
printResult(m.matches());
// ,
printResult("Test1");
printResult("abc".matches("[a-z]{3}"));
// Ip
printResult("Test2");
printResult("192.168.0.aaa".matches("\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}"));
//
printResult("Test3");
printResult("Hello world".matches("^H[a-z]{1,3}o\\b.*"));
printResult("Helloworld".matches("^H[a-z]{1,3}o\\b.*"));
}
public static void printResult(Object o){
System.out.println(o);
}
}
결 과 는:
true
Test1
true
Test2
false
Test3
true
false
IP 주소 와 단어 경계 의 예 에서 대황 이 '\ d' 와 같은 표현 방법 을 사용 한 것 을 볼 수 있 습 니 다. 이것 은 자바 의 전의 문자 때 문 입 니 다. 쉽게 말 하면 첫 번 째 역 슬 래 쉬 는 두 번 째 역 슬 래 쉬 가 다른 전의 문자 의 일부분 이 아니 라 역 슬 래 쉬 입 니 다.경계 예 에서 첫 번 째 로 true 로 돌아 가 는 두 번 째 이 유 는 false 입 니 다. 이 유 는 \ b 의 등장 입 니 다. o 뒤에 따라 o 까지 단 어 를 표시 합 니 다.
Et voilà!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.