2010-08-10 4 views
3

누군가 다음 정규 표현식과 일치하는 것을 설명 할 수 있습니까?

^.*$ 

고마워요!

+1

이 내용은 http://download-llnw.oracle.com/javase/1.5.0/docs/api/java/util/regex/Pattern.html에 잘 설명되어 있습니다. 공식 문서에 무엇이 잘못 되었습니까? –

답변

21

어느 전체 문자열 또는multiline mode 여부에 따라 전체 행이 사용된다.

0

모든 것이 일치하는 것 같습니다 ...

+0

이 질문에 대한 답을 제공하지 않습니다. 비평하거나 저자의 설명을 요청하려면 게시물 아래에 의견을 남겨 둡니다. – Ankur

+0

@ 안쿠르 : 동의하지 마라. 그것은 약간의 설명과 함께 질문에 직접 답합니다. 엄격히 말하자면, 완전히 정확하지는 않지만, 그렇다고해서 그것이 답이 아님을 의미하지는 않습니다. – Mac

15

모든 것.

^ is the beginning of the string. 
. is any character. 
* means 0 or more of said characters. 
$ is the end of the string. 

그래서이 정규식은 문자열을 시작하고 끝내는 0 개 이상의 문자 (모든 것)와 일치합니다.

+0

설명 주셔서 감사합니다 – user73829

+0

+1 좋은 간단한 설명 –

+3

기본적으로 대부분의 정규식 구현은 DOT 메타 문자에 대해'\ r'과'\ n '과 일치하지 않습니다. 그래서, "모든 것"이 아닙니다. –

1

아무거나 일치합니다.

^은 줄의 시작을 나타냅니다. $은 줄의 끝을 나타냅니다. 따라서 표현식은 전달 된 전체 문자열과 일치해야합니다.

.은 단일 문자와 일치합니다. *은 0과 임의의 횟수 사이에 나타날 수 있다는 것을 의미합니다. 즉 문자열은 0을 포함하여 임의의 수의 문자를 가질 수 있습니다.

2

빈 줄과 비어 있지 않은 줄이 모두 일치합니다. 그것은 다음과 같은 부분으로 나눌 수 있습니다 문자열 또는 라인의

^ : match the beginning of the line 
. : match any character except newline 
* : match zero or many instances of the match 
$ : match the ending of the line 
1

^ = 시작 (설정에 따라 다름).

. = 모든 문자.

* = 이전 문자의 임의의 숫자. 이 경우에는 .입니다.

$ = 문자열 또는 줄 끝 (설정에 따라 다름).

두 줄을 조합하면 여러 줄 설정이 무엇인지에 따라 전체 줄 또는 전체 줄 중 하나와 일치 할 수 있습니다 (자세한 내용은 this 참조).

0

빈 문자열을 포함한 모든 것과 일치하는 것처럼 보입니다. . *는 모든 항목 (마침표)이 0 번 이상 (*)과 일치 함을 의미합니다.^및 $는 다중 행 플래그를 설정 한 경우 중복됩니다 (Java에 무엇이 있는지 확실하지 않음).

관련 문제