在字符串列表中查找特定模式(正则表达式)(Python)

2024-10-02 08:16:45 发布

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

我有一个字符串列表:

teststr = ['1 FirstString', '2x Sec String', '3rd String', 'x forString', '5X fifth']

我需要做的是从这个列表中获取包含以下内容的所有元素:

^{pr2}$

或者

number + "X"

例如,如果我有

def SomeFunc(string):
    #do something

我想得到这样的输出:

2x Sec String
5X fifth

我在StackOverflow中找到了一个函数:

def CheckIfContainsNumber(inputString):
    return any(char.isdigit() for char in inputString)

但这将返回每个有数字的字符串。在

如何扩展函数以获得所需的输出?在


Tags: 函数字符串元素number列表stringdefsec
1条回答
网友
1楼 · 发布于 2024-10-02 08:16:45

re.search函数与列表理解一起使用。在

>>> teststr = ['1 FirstString', '2x Sec String', '3rd String', 'x forString', '5X fifth']
>>> [i for i in teststr if re.search(r'\d+[xX]', i) ]
['2x Sec String', '5X fifth']

\d+匹配一个或多个数字。[xX]匹配大小写x。在

把它定义为一个单独的函数。在

^{pr2}$

相关问题 更多 >

    热门问题