Python 在字符串中查找AB和BA,但不重叠
在字符串中查找AB和BA,不重叠。 AB和BA的顺序并不重要。 我无法按如下方式编写此应用程序:Python 在字符串中查找AB和BA,但不重叠,python,string,python-3.x,find,Python,String,Python 3.x,Find,在字符串中查找AB和BA,不重叠。 AB和BA的顺序并不重要。 我无法按如下方式编写此应用程序: s = input() chars = set('AB' and 'BA') if all((c in chars) for c in s): print('YES') 例如,如果输入是ABBA,则答案是YES。如果有BAAB输入,则我有YES。但是如果输入是ABA,则答案为否,或者如果输入是ABHA,则答案为否 else: print('NO') 听起来正则表达式有问题: im
s = input()
chars = set('AB' and 'BA')
if all((c in chars) for c in s):
print('YES')
例如,如果输入是ABBA,则答案是YES。如果有BAAB
输入,则我有YES。但是如果输入是ABA
,则答案为否,或者如果输入是ABHA
,则答案为否
else:
print('NO')
听起来正则表达式有问题:
import re
s = input()
if re.search("(AB.*BA|BA.*AB)", s):
print("Yes")
也许可以尝试搜索字符串的“余数”,因此一旦在“ABBA规则”中找到“AB”,就可以搜索“BA规则”以查看其中是否包含“BA”?