python - 仅使用字符串方法匹配字符串后跟数字

标签 python python-3.x string

所以我已经编写了很多代码,到目前为止避免导入或使用正则表达式,并且如果可能的话更愿意保持这种方式。

有一个如下所示的列表:

mylist = ["dog", "dogs", "dogs75", "75dogs", "cats75"]

我可以像这样获取各种匹配元素的索引:

>>> [i for i, j in enumerate(mylist) if "cat" in j]
[4]
>>> [i for i, j in enumerate(mylist) if "dog" in j]
[0, 1, 2, 3]
>>> 

我实际上要寻找的是“dogs75”,实际上是末尾包含整数的任何字符串。

可以在不导入re的情况下完成此操作吗?

最佳答案

您可以使用列表理解并检查每个字符串的最后一个字符是否为数字:

[ix for ix, i in enumerate(mylist) if i[-1].isnumeric()]
# [2, 4]

关于python - 仅使用字符串方法匹配字符串后跟数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54929965/

相关文章:

c# - 从字符串中提取所有出现的特定字符

python - CX_卡住: invalid character in identifier

python - Qt QlineEdit 错误弹出窗口/气球消息

python - 如何处理CV2(Cv2.imwrite)中的错误?

python-3.x - tensorflow tensorflow.contrib.learn.Estimator 加载训练模型

java - JVM 在共享字符串数据方面可以更聪明吗?

python - 可以使用 python 将两个单独的矩阵划分并保存在数据框中吗?

python - 如何使用 tkinter 提示用户将 DataFrame 保存到 Excel 文件?

python-3.x - 使用Python解码套接字中收到的字节

c - c中的字符串更新