2014-07-23 3 views
0

정규식 패턴은 @"\d+"입니다. 그러나 "9r651"문자열의 경우 항상 true를 반환합니다. 난 단지 숫자 (0-9)를 포함하는 문자열에 대해 true를 반환하기를 원한다. 나는 이것을 이해할 수 없다. 어떤 도움을 주시면 감사하겠습니다. 감사합니다. .숫자에 대한 정규식은 숫자가 아닌 문자와 일치합니다.

+0

은 더 자세한 설명 제목을 선택하십시오 "라인이 종료 하나 개 이상의 숫자 뒤에는, 여기 시작해야합니다"를 의미한다. "정규 표현식"은 귀하의 특정 문제에 관해 아무 것도 말하지 않으며, 귀하와 유사한 문제에 대한 해결책을 찾으려는 미래의 독자는이 질문을 찾을 수 없습니다. – dcastro

답변

1

그 패턴을 "여기에서 끝나야 라인은"어떤에서, 긍정적 인 일치를 반환 "라인은 여기에서 시작해야합니다"와 $ 말한다 말한다 시도 문자열의 위치.

은 당신이 원하는 것은 문자열이 숫자만을 포함되지 않는 경우 긍정적으로 일치하는 패턴이다. 끝의 시작 부분에 ^$ 추가

^\d+$

6

당신은 그렇지 않으면 어디서든 주제 내부의 일치를 찾을 수, anchor your regex해야합니다. ^\d+$ 패턴을 사용하십시오.

^ 주제의 시작 부분에서 발생한다 일치하는 정규식 엔진을 알려줍니다.

$ 주제의 끝에서 발생해야 일치하는 정규식 엔진을 알려줍니다.

3

@"^\d+$" 

이^문자열이 하나 이상의 숫자가 포함 된 경우

관련 문제