2012-01-25 2 views
-1

어떤 이유로 100을 입력했지만 100.0을 입력해도이 정규 표현식이 작동하지 않습니다.정규식이 작동하지 않습니다.

^(?!0*(.0+)?$)(\d+|\d*\.\d+)$ 

왜 그런가?

+0

평가할 때 사용하는 프로그램 또는 클래스 이 정규식? – Sjoerd

+1

인식하려면 무엇이 지원 되나요? –

+0

OP는 0을 나타내는 무언가를 제외하고는 양수를 얻고 싶다고 가정합니다. – Lucero

답변

3

이 문제가 발생하는 귀하의 부정적 예측이다 :

0*(.0+)?$ 

여기에있는 점은 어떤 문자를 의미 - 당신이 그것을 탈출하려는 :

^(?!0*(\.0+)?$)(\d+|\d*\.\d+)$ 

아니면 긍정적 예측에 더 간단을 :

^(?=.*?[1-9])(\d+|\d*\.\d+)$ 
+0

미안하지만 어떻게 최종 정규식을 보일까요? 그 점이 없어도 똑같은가요? –

+0

@Dave, 전체 정규식으로 편집 됨. – Lucero

관련 문제