“如何拆分字符串”&引用;180101051436_Radmin_VPN_1.0.3448“;在python中正好转换为两个字符串

“如何拆分字符串”&引用;180101051436_Radmin_VPN_1.0.3448“;在python中正好转换为两个字符串,python,Python,如何在python中将“180101051436_Radmin_VPN_1.0.3448”拆分为两个字符串。我希望输出为“180101051436_”一个字符串和“Radmin_VPN_1.0.3448”第二个字符串,您可以在第一个下划线后拆分: s = "180101051436_Radmin_VPN_1.0.3448" index = s.find("_") + 1 # get the position just after the first underscore (13) s1 =

如何在python中将“180101051436_Radmin_VPN_1.0.3448”拆分为两个字符串。我希望输出为“180101051436_”一个字符串和“Radmin_VPN_1.0.3448”第二个字符串,您可以在第一个下划线后拆分:

s = "180101051436_Radmin_VPN_1.0.3448"

index = s.find("_") + 1  # get the position just after the first underscore (13)

s1 = s[:index]  # get everything in the string *before* index
s2 = s[index:]  # get everything in the string *after* index

您需要对str.split函数使用可选的maxsplit参数

x、 拆分(1)

结果:['180101051436','Radmin_VPN_1.0.3448']

这不会保留用于拆分字符串的下划线,但如果需要,可以很容易地将其添加回


文档参考:

您可以使用正则表达式,以防必须获取数字和字符串的其余部分

以下是一个例子:

import re

s = '180101051436_Radmin_VPN_1.0.3448'
res = re.search(r'(\d*_)(.*)', s)
print res.groups() # ('180101051436_', 'Radmin_VPN_1.0.3448')

1.使用正则表达式。2.如果有固定数量的数字,请使用切片。3.如果数字的数量可变,则对其进行计数,并根据结果进行切片。
str.split
采用第二个参数,指定最大拆分数量。你可以用这个
str.split([sep[,maxslit]])
--查看python文档以了解更多详细信息。谢谢,我能够获得正确的字符串。您能告诉我逻辑吗,我没有得到。为什么索引中添加了+1@chetan我对这个问题作了一些解释answer@chetan
s.find(“”)
获取第一个下划线的索引。如果在此处拆分,则下划线将在第二个字符串中,但您表示希望在第一个字符串中拆分,因此我们在下划线之后添加
1
。希望这能有所帮助。谢谢@ikac。这样我也得到了正确的字符串