嗨,我需要帮助才能做到这一点: 考虑到我的字符串仅包含空格和小写字母,我需要检查字符串中的所有字母是否彼此之间至少隔开一个空格。如果字符串跟在此后面,则打印“分隔”,否则打印不分隔。 谢谢:)
答案 0 :(得分:1)
您可以将字符串分成多个空格列表,然后在单个命令中找出每个空格的最大长度。如果将每个字符隔开,则列表中每个元素的最大长度将为1。如果同时存在多个字母,则最大值为> 1。
NSDictionary
所以简单地变成:
let filteredArray = MyDict.filter {
for key in $0.allKeys {
if let string = $0[key] as? String,
string.contains(searchText) {
return true
}
}
return false
}
searchActive = filteredArray.count > 0
答案 1 :(得分:0)
这非常粗糙,不清楚您想要什么:
s1 = "t his will fail"
s2 = "t h i s s e p a d"
def is_spaced(s):
prev = s[0]
result = "is spaced"
for c in s[1:]:
if not c.isspace() and not prev.isspace():
result = "not spaced"
break
prev = c
return result
print(is_spaced(s1))
print(is_spaced(s2))
输出:
not spaced
is spaced
答案 2 :(得分:0)
您可以使用isspace()
函数,它不带任何参数,并且返回true和false。如果您想检查某个string
之间是否有空格,请使用string.isspace()
>
答案 3 :(得分:0)
将字符串分成空格,然后检查每个组件的长度。
demo='a b c d ef'
if all([len(item)<2 for item in demo.split(' ')]):
print('is separated')
else:
print('not separated')
demo.split(' ')
在一个空格上拆分列表。给['a','b','c','d','ef']
[len(item)<2 for item in demo.split(' ')]
贯穿上面的列表,并检查每个组件的长度。如果长度小于2,则返回True,否则返回False。对于此示例,这给出了[True,True,True,True,False]
all([len(item)<2 for item in demo.split(' ')])
使用all()检查列表中的所有布尔值是否为True。如果一切为True,则返回true,否则返回False。