从字符串中提取出数字

在平时的工作中,解析Log日志时,很多Log日志的名字是用数字编号和字母字符组成,有时候只需要数字编号即可,这可以通过正则表达式来提取,这里介绍两种很简单的提取方法,但很实用,还有其他方法,欢迎大家留言补充。

# ! /usr/bin/env python
# encoding:utf-8

import re

def ExtractNumber(testcase):
	resultData1 = re.findall(r'd+.?d*', testcase)
	resultData2 = re.sub('D', ' ', testcase).split()  #'D'表示非数字
	resultString = re.findall(r'D+', testcase) #'D+'表示一个或多个非数字
	print(resultData1)  # ['123', '456', '90']
	print(resultData2)  # ['123', '456', '90']
	print(resultString)  # ['abc', 'jiu']
	
if __name__ == '__main__':
	test ='123abc456jiu90'
	ExtractNumber(test)

  

原文地址:https://www.cnblogs.com/xqn2017/p/8006391.html