나는 이미 .*
은 어떤 문자도 0 개 이상을 의미하지만, 은 누군가가 다음 작품에서 어떻게 .*
을 어떻게 설명 할 수 있었는지, 그리고 그것이 무엇을 의미하는지 이해할 수 있습니까?어떻게 *. (별표)가 작동합니까?
.*([a-m/]*).*
.*([a-m/]+).*
.*?([a-m/]*).*
나는 이미 .*
은 어떤 문자도 0 개 이상을 의미하지만, 은 누군가가 다음 작품에서 어떻게 .*
을 어떻게 설명 할 수 있었는지, 그리고 그것이 무엇을 의미하는지 이해할 수 있습니까?어떻게 *. (별표)가 작동합니까?
.*([a-m/]*).*
.*([a-m/]+).*
.*?([a-m/]*).*
각 케이스는 다르다 :
.*([a-m/]*).*
첫 번째 [a-m/]
이 존재하는 필요하지 않기 때문에 .*
아마, 전체 문자열을 일치, 첫 번째 *
이 욕심이 먼저 온다. .*([a-m/]+).*
첫 번째 .*
은 하나가 필요하기 때문에
[a-m/]
일치하는 마지막 문자까지 전체 문자열을 일치, 첫 번째 *
는 욕심이 먼저 온다. *?
이없는 욕심 때문에 .*?([a-m/]*).*
첫 번째 .*?
은 [a-m/]
과 일치하는 첫 번째 문자까지 문자열과 일치하는 것이다 +
다음 마지막 욕심, 그리고 있기 때문에, 다음 [a-m/]+
, 그것은 할 수있는 모든 일치합니다 .*
은 나머지 문자열과 일치합니다.
멋지게 완료되었습니다. +1 – XIVSolutions
점은 여기 수있는 모든 것을 의미하고, 별은 너무 .*
빈 문자열을 포함한 모든 문자 시퀀스를 받아 적어도 0 번을 의미한다.
어떻게하셨습니까? 당신은 '진짜 질문이 아닙니다'라고 대답했습니다. –
@Thereisnothingwecando : "진짜 질문이 아닙니다 ... 10시 2 분 12 초 9시 38 분에". Ionut은 eariler에 답했습니다. (아직도 진짜 질문이었을 때 :)). –
. *는 "임의의 문자, 반복 횟수"를 의미합니다.
귀하의 예제에서. *의 기능은 포함 된 표현식이 무엇이든 (또는 아무것도) 둘러싸여 있지 않은지 확인하는 것입니다. 점은 임의의 문자를 나타내고 별표는 앞의 문자가 임의의 횟수만큼 반복 될 수 있다고 말합니다.
Regex에서'.'는 숫자, aplhabet 문자 또는 다른 특수 문자가 될 수 있습니다. '*'는 0 번 이상을 의미합니다. – asgs
그것은 충분히 간단합니다 - 어떤 상징이라도, 0 번 이상 존재합니다 - 그러나 그 밑에는 뉘앙스가 있습니다. 게다가 정규 표현식의 핵심 개념입니다. 지금 나가서 정규 표현식에 대한 배경 지식을 읽으십시오. 그렇게하면 더 빨리, 더 빨리 얻을 수 있습니다. –