如何提取字符串Python中的第一个数字

2024-10-05 12:48:32 发布

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

如何删除字符串中第一个字母前的所有数字?例如

myString = "32cl2"

我希望它变成:

"cl2"

我需要它对任何长度的数字工作,所以2h2应该变成h2,4563nh3变成nh3等等。 编辑: 这个问题的数字之间没有空格,所以它与另一个问题不同,它是第一个数字,而不是所有的数字。你知道吗


Tags: 字符串编辑字母数字h2空格mystringcl2
2条回答

使用lstrip

myString.lstrip('0123456789')

或者

import string
myString.lstrip(string.digits)

如果不使用正则表达式求解,可以使用^{}

>>> from itertools import dropwhile
>>>
>>> ''.join(dropwhile(str.isdigit, "32cl2"))
'cl2'
>>> ''.join(dropwhile(str.isdigit, "4563nh3"))
'nh3'

或者,使用^{},替换字符串开头的一个或多个数字:

>>> import re
>>> re.sub(r"^\d+", "", "32cl2")
'cl2'
>>> re.sub(r"^\d+", "", "4563nh3")
'nh3'

相关问题 更多 >

    热门问题