this article을 읽었습니다. 여기서 /^1?$|^(11+?)\1+$/
펄 정규식을 사용하여 숫자가 소수인지 테스트합니다.Python에서 regex를 통한 Is_prime 함수 (perl에서)
프로세스 : s
는 정규식을 matchs 경우
s = '1' * your_number
, 그것은 소수 아니다. 그렇지 않으면, 그것은 소수입니다.
어떻게 정규 표현식을 파이썬의 re
모듈로 변환하겠습니까?
this article을 읽었습니다. 여기서 /^1?$|^(11+?)\1+$/
펄 정규식을 사용하여 숫자가 소수인지 테스트합니다.Python에서 regex를 통한 Is_prime 함수 (perl에서)
프로세스 : s
는 정규식을 matchs 경우
s = '1' * your_number
, 그것은 소수 아니다. 그렇지 않으면, 그것은 소수입니다.
어떻게 정규 표현식을 파이썬의 re
모듈로 변환하겠습니까?
이 (파이썬에서 필요하지 않은 가장자리에서 슬래시없이 제외)와 같이 작동합니다
pattern = r'^1?$|^(11+?)\1+$'
re.match(pattern, '1'*10) #matches
re.match(pattern, '1'*11) #doesn't match
여기에 필요한 유일한 표준이 아닌 정규식 기능은 역 참조 (\1
),이 지원됩니다 Perl과 Python에서.
감사합니다, 나는 원시의 r을 잊었 기 때문에 문제가 발생했습니다 –
사람이 왜 삭제 된 답변을 설명 할 수 있습니까? http://stackoverflow.com/questions/2225027/is-prime-function-via-regex-in-python-from- perl/2225069 # 2225069 잘못 되었기 때문에 잘못되었다는 가정하에 잘못된 것입니까? – ysth
나는 그것을 보았다. 그것은 틀리지 않았습니다. –
내가 모든 것을 보았을 때 ... –
좀 더 압축 된 소수 테스트가 끝났습니다. http://stackoverflow.com/questions/1805796/code-golf-ulam-spiral'all (i % d d 범위 (2, i))' –
@Mike 역 참조와 일치하는 정규식은 NP 하드입니다. http://perl.plover.com/NPC/ –