2013-08-23 3 views
1

정규식 패턴으로 비교할 수 있습니까? 최근에 일치하는 그룹이 greater than인지 확인하고 싶습니다. 이것은 패턴입니다 : size=(\d+) 그리고 (\d+)>200이 true를 반환하는지 확인하고 싶습니다.정규식의 비교 연산자

+6

이것은 정규 표현식이 아니며 프로그래밍 언어입니다. 그래서 아니야. – deceze

+0

나는 그렇게 생각하지 않는다. 하지만 당신은 200까지의 모든 것을 일치시킬 수 있습니다. – putvande

+0

'([0-9] {2,} | [2-9]) [0-9] [0-9]' – SmokeyPHP

답변

5

당신은 같은 구문을 수행하지만, 당신이 후있어하는 것은 가능합니다 수 없습니다 더 복잡한 표현과 같은 :

큰 200 :

([1-9]\d+|[2-9])\d\d 
:
([1-9]\d+|(?!200)[2-9])\d\d 

(200)를 포함

그러나 다른 (더 큰) 숫자에 접근하면 관리 할 수 ​​없습니다.

모든 숫자를 일치시킨 다음 결과를 반복하여 > 200 검사를 수행하고 준수하지 않는 검사를 제거하십시오.

참고 : 위의 정규식은 순수 정규식에서 200보다 큰 일치하는 숫자가 가능함을 보여줍니다. 그러나 그것은 권장되지 않으며 더 복잡한/변수 숫자는 작동하지 않을 것입니다.

\b((3[1-9][4-9][5-9][7-9][2-9][8-9]\d+)|(3[1-9][4-9][5-9][7-9][3-9]\d{2,})|(3[1-9][4-9][5-9][8-9]\d{3,})|(3[1-9][4-9][6-9]\d{4,})|(3[1-9][5-9]\d{5,})|(3[2-9]\d{6,})|(?!31457280)(4\d{7,}))\b 

(: 그들은 정규식 고통 이유 증명의 이름으로 > 31457280

> 30*1024*1024 일치하고 싶다고 의견에 언급

OP, 내가 필요한 패턴을 작성했습니다 매우 예쁘지 않습니다!)

+0

"0000"...과 일치합니다. – deceze

+0

@deceze 고정. 다시 : p – SmokeyPHP

+0

그것은 200과 일치해야하며> 200 ...과 일치해야합니다; P – deceze

0

아니, 그것은 불가능, 정규 표현식의 목적은 그것으로 프로그램하지 expresions 일치하는 것입니다