题目:给定两行空的字符串,第一行的字符串包含了部分空白(空格、tab),第二行字符串不包含任何空白,请从第一行字符串中匹配第二行字符串,匹配时忽略空白及tab,输出第一行字符串中第二行字符串出现的次数;
输入:第一行输入小于1K的字符串,包含了部分空白(空格、tab)
第二行输入小于1K的字符串,不包含任何空白
输出:
Abb bn bb 2
import re
s1 = input()
s2 = input()
s1 = s1.replace(' ', '', -1)
pattern = re.compile(s2)
s3 = pattern.findall(s1)
print(len(s3))
以上有误,请注意
重新写的代码如下:
import re
from sys import stdin
[str1, str2] = [val.strip() for val in stdin if val.strip() != '']
str1_dealed = re.sub(r'[^\S]', '', str1)
count = 0
start = 0
while True:
idx = str1_dealed.find(str2, start)
if idx == -1:
break
else:
start = idx + 1
count += 1
print(count)