查找字符串的索引+;python中的整数
我有一个字符串“Something M6”,我想知道字符串中是否有“M6”。“M6”中的6可以是任何整数。有没有不使用正则表达式或for循环就可以找到它的方法查找字符串的索引+;python中的整数,python,integer,find,Python,Integer,Find,我有一个字符串“Something M6”,我想知道字符串中是否有“M6”。“M6”中的6可以是任何整数。有没有不使用正则表达式或for循环就可以找到它的方法 >>> s = 'Something M6' >>> 'M' in s and s[s.rfind('M') + 1].isdigit()
>>> s = 'Something M6'
>>> 'M' in s and s[s.rfind('M') + 1].isdigit()
True
>>> s = 'Something M1'
>>> 'M' in s and s[s.rfind('M') + 1].isdigit()
True
>>> s = 'Something Mx'
>>> 'M' in s and s[s.rfind('M') + 1].isdigit()
False
这适用于单个数字。它查找字符串中的最后一个M,并检查它后面是否有数字
如果M后面有超过1位数字,可以用:
将其切分到末尾
>>> s = 'Something M123'
>>> 'M' in s and s[s.rfind('M') + 1:].isdigit()
True
这适用于单个数字。它查找字符串中的最后一个M,并检查它后面是否有数字
如果M后面有超过1位数字,可以用:
将其切分到末尾
>>> s = 'Something M123'
>>> 'M' in s and s[s.rfind('M') + 1:].isdigit()
True
我想你可以这样做:
string = "Something M6"
if string.split(" ")[-1][0]=="M" and string.split(" ")[-1][1:].isdigit() :
print True
我想你可以这样做:
string = "Something M6"
if string.split(" ")[-1][0]=="M" and string.split(" ")[-1][1:].isdigit() :
print True
为什么不是正则表达式?但是M是常量?为什么不能使用正则表达式或for循环?while循环如何?@Vignesh是的,M是常量。为什么不是正则表达式?但是M是常量?为什么不能使用正则表达式或for循环?while循环如何?@Vignesh是的,M是常量。但是如果有两个呢我s@VigneshKalai是的,如果有多个M,您可以使用
rfind
。我编辑过in@TimCastelijns你能告诉我,如果某个特定的“M”在那里,我怎样才能得到它的索引吗?@bazinga它是s.find('M')
或rfind,如果你想找到字符串中的最后一个M,但是如果有两个M呢s@VigneshKalai是的,如果有多个M,您可以使用rfind
。我编辑过in@TimCastelijns你能告诉我,如果某个特定的“M”在那里,我如何才能得到它的索引吗?@bazinga它是s.find('M')
,如果你想找到字符串中的最后一个M,请使用rfind