Python获取给定字符串的数字前缀
假设我们有一个以数字开头的字符串。在本文中,我们将看到如何仅获取固定在开头的字符串的数字部分。
与isdigit
isdigit函数确定字符串的一部分是否是digit。因此,我们将使用itertools中的takewhile函数来连接字符串的每个部分,即数字。
示例
from itertools import takewhile # Given string stringA = "347Hello" print("Given string : ",stringA) # Using takewhile res = ''.join(takewhile(str.isdigit, stringA)) # printing resultant string print("Numeric Pefix from the string: \n", res)
输出结果
运行上面的代码给我们以下结果-
Given string : 347Hello Numeric Pefix from the string: 347
带re.sub
使用正则表达式模块re,我们可以创建一个模式以仅搜索数字。搜索将仅在字符串的开头找到数字。
示例
import re # Given string stringA = "347Hello" print("Given string : ",stringA) # Using re.sub res = re.sub('\D.*', '', stringA) # printing resultant string print("Numeric Pefix from the string: \n", res)
输出结果
运行上面的代码给我们以下结果-
Given string : 347Hello Numeric Pefix from the string: 347
与re.findall
findall函数的工作方式类似于女孩接受我们使用加号而不是*的方式。
示例
import re # Given string stringA = "347Hello" print("Given string : ",stringA) # Using re.sub res = ''.join(re.findall('\d+',stringA)) # printing resultant string print("Numeric Pefix from the string: \n", res)
输出结果
运行上面的代码给我们以下结果-
Given string : 347Hello Numeric Pefix from the string: 347