정규식에서“모든 문자”를 일치시키는 방법?
다음이 일치해야합니다.
AAA123
ABCDEFGH123
XXXX123
내가 할 수있는 일 : ".*123"
?
그래 넌 할수있어. 작동합니다.
.
= 어떤 문자\.
= 실제 도트 문자.?
=.{0,1}
= 모든 문자를 0 번 또는 1 번 일치.*
=.{0,}
= 모든 문자를 0 번 이상 일치.+
=.{1,}
= 모든 문자를 한 번 이상 일치
예, 작동하지만 표현식을 컴파일 할 때 DOTALL 플래그 .
를 전달하지 않으면 줄 바꿈과 일치하지 않습니다 .
Pattern pattern = Pattern.compile(".*123", Pattern.DOTALL);
Matcher matcher = pattern.matcher(inputStr);
boolean matchFound = matcher.matches();
패턴 .
을 사용하여 임의의 문자를 한 번 일치 시키고 , .*
임의의 문자를 0 번 이상 .+
일치시키고 , 임의의 문자를 1 회 이상 일치 시키십시오.
정교한 정규식 테스트 및 개발 도구가 많이 있지만 Java로 간단한 테스트 하네스를 원한다면 다음과 같이 사용할 수 있습니다.
String[] tests = {
"AAA123",
"ABCDEFGH123",
"XXXX123",
"XYZ123ABC",
"123123",
"X123",
"123",
};
for (String test : tests) {
System.out.println(test + " " +test.matches(".+123"));
}
이제 새로운 테스트 케이스를 쉽게 추가하고 새로운 패턴을 시도 할 수 있습니다. 정규식을 탐험하는 재미를 즐기십시오.
또한보십시오
아니요, *
0 개 이상의 문자와 일치합니다. +
대신 하나 이상을 일치시키는을 사용해야 합니다.
이 표현은 당신에게 더 효과적 일 수 있습니다 : [A-Z]+123
예제 문제에 대한 구체적인 해결책 :-
시도 [A-Z]*123$
일치합니다 123
, AAA123
, ASDFRRF123
. 123
사용 하기 전에 적어도 문자가 필요한 경우 [A-Z]+123$
.
질문에 대한 일반적인 해결책 (정규 표현식에서 "모든 문자"를 일치시키는 방법) :
- 공백을 포함한 것을 찾고 있다면 시도해 볼 수 있습니다
[\w|\W]{min_char_to_match,}
. - 공백 이외의 것을 일치 시키려고 시도하면 시도 할 수 있습니다
[\S]{min_char_to_match,}
.
내가 이것을 인코딩하는 가장 일반적인 방법은 멤버가 가능한 모든 문자 세트의 파티션을 형성하는 문자 클래스를 사용하는 것입니다.
보통 사람들이 쓰기와 [\s\S]
생각 (공백 또는 공백이 아닌), [\w\W]
, [\d\D]
, 등 모든 작업을 할 것이다.
정규식을 사용해보십시오. {3,}. 이것은 모든 문자가 새로운 줄을 기대하는 것과 일치합니다.
나는 이것을 작동한다 항상 점은 모든 문자를 의미하지 않는다. 단일 회선 모드 인 경우 예외입니다. \ p {all}은
`String value="|°¬<>!\"#$%&/()=?'\\¡¿/*-+_@[]^^{}";
String expression="[a-zA-Z0-9\\p{all}]{0,50}";
if(value.matches(expression)){
System.out.println("true");
}else{
System.out.println("False");
}`
어떤 캐릭터를 확인하고 싶을 경우에 도움이 된 것
[^]+
참고 URL : https://stackoverflow.com/questions/2912894/how-to-match-any-character-in-regular-expression
'Programing' 카테고리의 다른 글
데이터베이스에서보기를 작성하는 이유는 무엇입니까? (0) | 2020.04.03 |
---|---|
문자열로 파일을 읽는 가장 간단한 방법은 무엇입니까? (0) | 2020.04.03 |
Maven이 사용중인 settings.xml 파일을 판별하기위한 Maven 명령 (0) | 2020.04.03 |
파이썬에서 산술 평균 (한 유형의 평균) 계산 (0) | 2020.04.03 |
.NET으로 Windows 64 비트 플랫폼을 감지하는 방법? (0) | 2020.04.03 |