정규 표현식을 사용하여 C#에서 더 긴 단어의 일부 alfanumeric 표현을 추출하려고합니다. 예를 들어 "FooNo12Bee"라는 단어가 있습니다. 나는 결과로 나에게 두 경기, "No12"와 "아니오"를 반환 다음 일반 표현식 코드, 사용C#에서 이상한 정규식 동작
alfaNumericWord = "FooNo12Bee";
Match m = Regex.Match(alfaNumericWord, @"(No|Num)\d{1,3}");
나는 paranthesis없이 대한 대안없이 다음 식을 사용하는 경우 "없음"이 없다 내가 기대하고있는 방법, 그것은 단지 "No12"를 반환 작동합니다
alfaNumericWord = "FooNo12Bee";
Match m = Regex.Match(alfaNumericWord, @"No\d{1,3}");
이 두 표현, 왜 "아니오"에 대한 중복 결과에 paranthesis 결과를 사용하여 차이점은 무엇입니까?
[그룹] (http://www.regular-expressions.info/brackets.html) - 그렇지 않은 * 중복을 * 당신이 명시 적으로 그것을 캡처하도록 요청했습니다 – CodingIntrigue