检查字符串中彼此相邻的重复字符

时间:2019-02-24 12:54:21

标签: python python-3.x

我希望用户输入一个以(a)开头和结尾的字符串,并且在它们之间有这样的重复字母:

“ abbabbabbabbabba” 重复可以是:(bb),(bbb),(bbbbb)或更多类似这样的内容: “ abbbabbbabbba” “ abbbbabbbbabbbba”

我设法检查了字符串的开头和结尾,如下所示:

input_sentence = input()
    if input_sentence[0] == 'a' and input_sentence[len(input_sentence) - 1] == 'a' :
        print('yes')

我试图像这样检查以前的值:

pass= 'abbabbabba'
prev = ''
for character in pass:
    if character == prev:
       print("repeated character:", character)
    prev = character

我只是可以检查一次重复的字母。

虽然可能不是正确的,但是我想知道如何检查字符串中以特定顺序重复的字母

2 个答案:

答案 0 :(得分:0)

您可以使用regular expression来检查输入是否与所需的模式匹配。

>>> p = r'^(abb+)+a$'
>>> re.match(p, "abbabbabbabbabba")
<re.Match object; span=(0, 16), match='abbabbabbabbabba'>
>>> re.match(p, "abbbabbbabbba")
<re.Match object; span=(0, 13), match='abbbabbbabbba'>
>>> re.match(p, "abbbabbbaba")
>>> 

模式p匹配一个字符串,该字符串完全由一个或多个字符串“ a”组成,后接至少两个“ b”,最后一个“ a”。

如果字符串与模式匹配,则match函数将返回匹配对象,否则将返回None

答案 1 :(得分:0)

@ f.wue

所以应该这样:

public config: SwiperConfigInterface = {
    direction: 'horizontal',
    slidesPerView: 4,
    keyboard: true,
    mousewheel: true,
    scrollbar: false,
    navigation: true,
    pagination: false,
    breakpoints:{
       640:{
            slidesPerView: 1, 
           }
    }
};