테스트를 검토하면서 소유욕이 실제로 str.split()
에서 작동 함을 확인했습니다. 실행하면정규 표현식 : Possessive Quantifier의 역 추적
String str = "aaaaab";
if(str.matches("a*+b"))
System.out.println("I backtrack");
else
System.out.println("Nope.");
, 이것은 I backtrack
를 출력 : 그래서 나는 다음과 같은 코드를 썼습니다. 이것이 왜 혼란 스러운지에 대한 이유는 소유욕있는 수량 기호가 결코 되돌아 가지 않는다고 들었습니다. 그렇다면 a*+
은 문자열에 b
을 포기할 이유가 무엇입니까?
내가 원하는 건 소유욕 한정어가 언제 되돌아 왔는지에 대한 자세한 설명입니다.
''a * +''가''b''를 소비하는 이유는 무엇입니까? 그것은 역 추적이 일어날 수있는 유일한 시나리오입니다. 그러나 그렇지 않습니다. – f1sh
'. * + b' vs'. * b' (또는 좀 더 구체적으로 말하자면'[ab] * + b' 대'[ab] * b')로 시도하십시오 – Aaron
링크 : http : // www.regular-expressions.info/possessive.html –