2014-01-28 3 views
0

웹 페이지에 텍스트 상자가 있습니다. 소수점 앞에 최대 15 자리수를두고 소수점 만 받아들이 길 원합니다. 이러한 123456789.1234뿐만 아니라 수 있도록하는 .121 등 ... 이것은 내가 현재 소수텍스트 상자에서 10 진수 정규 표현식

의 모든 다른 유사 수 있도록 사용하고 무엇

[+ -]를? \ D + (. ?. \ D *) |? \ D +

자리없이, 나는이

[+ -]의 라인을 따라 뭔가를 생각하고 허용 된 최대 추가하려면 \ D {0, 15} + (. \ d {0, 4})?. \ d {0,4} +

하지만 사용하려고하면 parsing "[+-]?\d{0,15}+(\.\d{0,4})?|\.\d{0,4}+" - Nested quantifier +. 오류가 발생합니다.

답변

4

{n,m}은 수량 한정 기호입니다. 따라서 다른 한정 기호를 그 뒤에 넣지 마십시오 (+).

시도 :

[+-]?\d{0,15}(\.\d{0,4})?|\.\d{0,4} 

귀하의 기간이 탈출해야합니다.


그냥 보조 노트로, {n,m}+ 특정 정규식 엔진에 유효한 정량이며, 그것은 소유 동작을 나타냅니다.

+0

그래서 {1,15}가 \ d 다음에 +를 대체합니까? – Noelle

+0

@ 노엘'{0,15}', 네. 물론 적어도 하나의 숫자를 원하면'{1,15}'를 사용해야합니다. – Jerry