2014-03-25 5 views
-2

python에서 사용자가 문자열에 a 및 b 만 포함하는지 확인하는 함수를 만드는 방법은 무엇입니까? 문자열은 사용자가 원하는만큼 길 수 있지만 문자 a와 b의 조합 만 포함해야합니다. 덕분에 .문자열에 특정 문자 만 포함되어 있는지 확인

import re 
import sys 

prog = re.compile('(a|b)*$') 

str ="""aaabbb""" 

if prog.match(str): 
    print "String matches" 
else: 
    print "String doesn't match" 
+0

Google에서 무엇을 말 했습니까? 너 무슨 짓을 한거야? 내 varibale이 var 인 경우 – manuell

답변

0

은 또한 정규 표현식을 사용하여, 당신은 또한 generator expression 검사 문자는 all 여부를 in을 사용할 수

+0

문자열에 문자 a 또는 b 만 있으면 False를 반환합니다. 나는 그것이 a와 b 인 경우에도 진실로 돌아 가기를 원합니다. – user3459811

+0

감사합니다. 지금 이해합니다. 내 코드는 훌륭하게 작동합니다. 이것은 내 변수에 a 및/또는 b가 있으면 False를 반환하지 않으면 보았습니다. if all (var에있는 c의 "ab"에있는 c) : return False – user3459811

+0

글쎄, 그때 거꾸로 잡았어. 'if all (...) : true를 반환한다 '또는 더 나은 것을 사용하고 대신'모두 반환 (...)'을 사용하십시오. 그래서, 지금 작동합니까? –

0

사용은 정규식 (a|b)*$ 문자열은 a와 b가

코드가 포함되어 있는지 여부를 확인합니다 문자열 "ab".

>>> all(c in "ab" for c in "foobar") 
False 
>>> all(c in "ab" for c in "aaabaababbba") 
True 
+0

입니다. 나는 var.regex (a | b |)를 할 것인가? – user3459811

관련 문제