comp/INFO_MAP_ECE/101102.1.119
这个字符串是 CPU 的输出,但数字后面总是有特殊/不可打印的字符,我的目标是获得不包括前面的文本和后面的特殊/不可打印的字符的数字。我正在尝试 split 方法,但不确定对特殊/不可打印字符使用什么。任何人都可以提出建议吗?这将是一个很大的帮助。谢谢。
最佳答案
假设您的输出总是看起来像您显示的那样,您可以使用 regular expression :
numPattern = r'/([\d.]+)'
output = 'comp/INFO_MAP_ECE/101102.1.119'
m = re.search(numPattern, output)
if m: #If a match was found
numString = m.group(1) #Extracts the first group surrounded by ()
#etc
此处的模式查找/,然后是一些数字和句点,然后是任何内容,然后只提取数字和句点。只要您始终获得与该描述匹配的字符串,这就应该有效。
喂!
关于Python、字符串、unicode 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7334341/