Python复制字符串的一部分

2024-09-28 01:29:07 发布

您现在位置:Python中文网/ 问答频道 /正文

我有这条线

Server:x.x.x.x # U:100 # P:100 # Pre:0810 # Tel:xxxxxxxxxx

我想复制值0810,它在Pre:value之后 我怎么能做到呢?在


Tags: servervaluepretelxxxxxxxxxx条线
2条回答

您可以使用re-module('re'代表正则表达式) 此解决方案假定您的Pre:字段始终有四个数字。 {{1}(如果cd2}的长度正好相反,{cd2}可能会更大)

>>> import re
>>> x = "Server:x.x.x.x # U:100 # P:100 # Pre:0810 # Tel:xxxxxxxxxx"
>>> num = re.findall(r'Pre:(\d{4})', x)[0] # re.findall returns a list

>>> print num
'0810'

你可以在这里读到:

https://docs.python.org/2/howto/regex.html

通常在这些情况下,最好的答案取决于字符串的变化情况,我们只有一个例子可以概括。在

总之,您可以使用字符串方法,如^{}直接获取:

>>> s = "Server:x.x.x.x # U:100 # P:100 # Pre:0810 # Tel:xxxxxxxxxx"
>>> s.split()[6].split(":")[1]
'0810'

但我倾向于更普遍的解决方案。例如,根据格式的变化,类似

^{pr2}$

这将生成一个包含所有值的字典,之后您可以访问任何元素:

>>> d["Pre"]
'0810'
>>> d["Server"]
'x.x.x.x'

相关问题 更多 >

    热门问题