![](/img/trans.png)
[英]How can i get a particular character from a Python list followed by command line argument variable
[英]Extract a particular number followed by a command line argument variable from a string in python
首先我说这是不是这样的:如何从一个字符串中获得整数值这里看看 ..ok所以
我的问题是: mv = / dev / vg10 / lv10:cp:99我需要提取vg10的“ 10”而不是[10]。 mv是一个字符串
我的最终输出应该只有10,应该从vg中提取
我的python版本: Python 2.6.1
在此先感谢..请帮助我:(
您应该查看python的正则表达式模块。 只需在脚本中“导入”即可提供正则表达式功能。 顺便说一句,如果您只希望字符串“ vg”后面的数字,那么以下脚本应该可以解决问题。
import re
urString = "/dev/vg10/lv10:cp:99"
Matches = re.findall("vg[0-9]*", mv)
print Matches
现在,比赛将有一个包含所有vg'number'的列表。 [0-9] *表示任意位数任意次数。 再次解析它以从中获取数字。 您应该阅读有关正则表达式的更多信息。 很有趣。
扩展答案以符合OP的要求:
In [445]: Matches
Out[445]: ['vg10']
In [446]: int(*re.findall(r'[0-9]+', Matches[0]))
Out[446]: 10
您是否在谈论这个:
import re
mv = "/dev/vg10/lv10:cp:99"
print re.search('/dev/vg(\d+)', mv).groups()
或者,如果vg可以是其他东西,但它始终是您希望执行的第二项操作:
print re.search('/dev/\w+(\d+)/lv10:cp:99', mv).groups()
import re
mv = '/dev/mapper/vg8-lv8-eSPAN_MAX_d4:eSPAN_MAX_d4:99'
print re.findall(r'(?<=vg)\d*', mv)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.