2016-09-12 4 views
0

주어진 M 문자의 순열을 나타내는 정규 표현식이 필요하며 순열은 길이 N이되어야합니다. 예를 들어, 1과 0이 있으므로 M=2이고 길이는 순열 캐릭터는 내가 가지고, 3 (. 즉 N=3) 할 필요가 :길이 M 문자의 순열에 대한 정규 표현 N

000, 001, 010, 011, 100, 101, 110, 111

N=2, 나는이있을 때 :

00, 01, 10, 11

정규식은 어떻게해야합니까?

감사합니다.

편집 : 는 그냥 글자 수 있으며, 입력이 자리에 한정되지 않고, 그것을 명확하게하려면, 예를 들어, 나는 유전체학에서 아데닌, 티민, 시토신과 구아닌을 나타내는 {A, T, C, G}, 나는의 순열을 가질 필요가 있어요

ATC, ATG, ACT, AGA

감사 : 그룹 별 세, 그래서 같은 목록을 가질 수 있습니다!

+1

당신은 아무것도를 시도 =? 이것은 문자 클래스와 한정 기호를 사용하는 것으로 충분하다. – 4castle

+0

왜 정규식이 필요한가요? 요구 사항입니까? –

+0

아래 정규 표현식이 필요한지 알려주세요 –

답변

1

Heres는 숫자 1-n과 일치합니다. 당신이 원하는 것을하기 위해 그걸로 고칠 수 있습니다. N에 대한

^(?=[1-n]{n}$)(?!.*(.).*\1).*$ 

샘플 입력은 4

1234 
2431 
abcde 
4321 
1231 
3412 

출력

1234 *MATCH* 
2431 *MATCH* 
abcde 
9010 
4321 *MATCH* 
1231 *MATCH* 
3412 *MATCH* 
+0

답변 해 주셔서 감사합니다. 최신 편집을 참조 할 수 있습니까? – hzxu

+1

왜 지구상에서 그렇게 복잡합니까? '^ [1234] {4} $'(또는'^ [1-4] {4} $')를 사용하는 것이 좋습니다. – rici

+0

이 정규식을 말로 표현하면 친절하니? –