2 자리 이상의 숫자를 포함하는 한 문자열과 일치하는 정규식이 필요합니다.임의의 두 자리 숫자에 대한 정규식
내가 무엇을 가지고 :
/(?=.*\d)(?=.*\d)/
및
/\d{2,}/
이 한 자리이고, 두 번째는 2 개 연속 숫자가 있어야 경우에도 첫 번째는 일치합니다. 나는 다른 방법으로 그들을 결합하려고 노력하지 않았다.
2 자리 이상의 숫자를 포함하는 한 문자열과 일치하는 정규식이 필요합니다.임의의 두 자리 숫자에 대한 정규식
내가 무엇을 가지고 :
/(?=.*\d)(?=.*\d)/
및
/\d{2,}/
이 한 자리이고, 두 번째는 2 개 연속 숫자가 있어야 경우에도 첫 번째는 일치합니다. 나는 다른 방법으로 그들을 결합하려고 노력하지 않았다.
당신은 훨씬 더 간단 할 수 있습니다
/\d\D*\d/
감사합니다. 나는이 문제를 복잡하게 끝내 었다고 생각한다. – M1Reeder
+1 그러나 이것은 더 빠릅니다.'/ \ d \ D * \ d /' – ridgerunner
grep -E ".*[0-9].*[0-9].*" filename
아니요, OP를 읽으십시오. 그는 2 자리 숫자가 아니라 2 자리 숫자를 의미합니다. – Junuxx
@Junuxx right, fixed. –
이 응용 프로그램 언어에 의존하지만,이 정규식은 가장 일반적입니다 :
^(?=.*\d.*\d)
는 모든 응용 프로그램의 언어 부분을 고려 "매칭"으로 매치합니다; 이 정규 표현식은 입력에서 두 자리가 어디에 있든 상관없이 일치합니다.
이.*\d.*\d.*
이 어디, 거기에 두 자리가 아무것도 일치합니다 :
는 다음과 같은 표현을 사용할 수 있습니다. 숫자가 어디에 있든 관계없이. Example here.
또한 이런 식으로 작업을 수행 할 수 있습니다, 사용 범위 :
.*[0-9].*[0-9].*
또한이 사용을 고려할 수 있습니다
\D*\d\D*\d
\D
가가 아닌 것은 일치합니다 자릿수
첫 번째'. *'는 많은 역 추적을 유발할 수 있기 때문에'\ D * \ d \ D * \ d'가 더 좋습니다. 또한 마지막'. *'은 필요 없다. – Jerry
@Jerry - 그보다 나은 것은 첫 번째'\ D *'를 제거하는 것입니다. 실제로 아무것도 추가하지 않습니다. –
@Jerry 당신이 좋아하는대로 편집하면 영광이 될거야 :) –
이것을 시도하십시오. [0-9]. {2}
이
당신이 사용하는 언어는 정규식 질문을 할 때 정확한 기쁘게 할 수 U에 도움이 될 것입니다? –