숫자 확인을위한 정규 표현식을 작성하려고합니다.여러 조건이있는 정규 표현식
나는 다음과 같은 식별 할 수 있어야한다 :
- 999
- 99.99
- 99,99
- 99 9/9
하지만 다음 테크네튬, 99BN , 99 $.
그래서 나는이 작업을 거라고 생각 :string rule1 = @"\b[0-9]+(?(.|,|\n){0,1}[0-9]+)\b";
[0-9]+
첫 번째 부분은 말한다 : 나는 1 개 이상의 숫자가 필요합니다. 점 또는 쉼표 또는 공백 후 나는 점, 쉼표 또는 공백 후 하나 개 이상의 숫자를 필요로하는 첫 번째 부분 다음에 오는 경우
:
(?(.|,|\n){0,1}[0-9]*)
마지막 경우에는 숫자에 공백이 있습니다. 그게 의도적 인거야? 두 개의 별개의 숫자로 어떻게 결정하겠습니까? –
줄 바꿈이 아닙니다. 1과 1/2처럼 분수 표현이되도록 고안되었습니다. 1/2 –
예를 들어 혼란 스럽 습니다만, 먼저 유효한 표기법을 4 개 부여한 다음 예외를 명시한 것처럼 명시합니다. 어쨌든이 정규식은 당신이 원하는 것을 다룹니다 : \ b [1-9] [0-9] * ([,.] [0-9] + | * [1-9] [0-9] */[1- 9] [0-9] *)? \ b'. 숫자 범위를 일치 시키려면 Codeplex에서 RegexNumRangeGen을 참조하십시오. – toplel32