문제

REGEX 문으로 모드 11 체크 숫자 루틴을 만들 수 있습니까?

Nubmer는 10 자리 숫자이며

1 단계 : A = (2 번째 숫자 * 2) + (3 번째 숫자 * 4) + (4 번째 숫자 * 8) + (5 번째 숫자 * 5) + (6 번째 숫자 * 10) + (7 번째 * 9) + (8 번째 숫자 * 7) + (9 번째 숫자 * 3))

2 단계 : b = a / 11 (나머지 무시)

3 단계 : C = B * 11

4 단계 : d = a -c

5 단계 : 11- D DUST = 10 숫자

도움이 되었습니까?

해결책

아니요 - 기본적으로 여기서 수학을하고 싶으므로 실제로 패턴에 관한 정규 표현에 맞지 않습니다.

내말은, 이론적으로 확실히 가능합니다 - 모든 유효한 숫자를 나열하고 하나의 거대한 regex로 결합 할 수 있습니다. 그러나 그렇지 않습니다 거의 실현 가능 한.

다른 팁

Regex를 유한 상태 기계로 사용하십시오. http://quaxio.com/triple/

Regex는 실제로 구문 분석하지 않고 패턴 일치합니다. 숫자를 얻으려면 숫자를 구문 분석해야합니다. REGEX를 사용하여 10 자리 숫자가되었는지 확인한 다음 TOSTRING ()를 자르고 자릅니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top