Python 如果找到一个字符串,如何从字符串中获取子字符串

Python 如果找到一个字符串,如何从字符串中获取子字符串,python,Python,这是一个字符串:\texample\tDart\u 181120172410.jpg\tImgCaption\t 是否仍然可以获取Dart_181120172410.jpg,并且如果子字符串的末尾包含.jpg,则可以说获取该子字符串。实际字符串甚至更长您可以在python中使用正则表达式来实现此目的。您可以在python中使用正则表达式来实现此目的。您可以使用split() 您可以使用split() 像这样: s = "a.jpg\tnot.llm\tp.jpg\tc.jpg\te.gif\tn

这是一个字符串:
\texample\tDart\u 181120172410.jpg\tImgCaption\t


是否仍然可以获取
Dart_181120172410.jpg
,并且如果子字符串的末尾包含
.jpg
,则可以说获取该子字符串。实际字符串甚至更长

您可以在python中使用正则表达式来实现此目的。

您可以在python中使用正则表达式来实现此目的。

您可以使用
split()

您可以使用
split()

像这样:

s = "a.jpg\tnot.llm\tp.jpg\tc.jpg\te.gif\tnix.txt"

all_jpegs = [x for x in s.split('\t') if '.jpg' in x]

print(all_jpegs)
输出:
['a.jpg','p.jpg','c.jpg']

在评论中提出了一个很好的观点-这将导致对
s=some.file\t此文件编号为.jgp.gif\t somemore.files
。改成

s = "a.jpg\tnot.llm\tp.jpg\tc.jpg\te.gif\tnix.txt\tnot.jpg.gif\tthis.JPG"
better_jpegs = [x for x in s.split('\t') if x.lower().endswith('.jpg')]

print(better_jpegs)
将删除它,并处理
'.JpG'或.JpG'

如下:

s = "a.jpg\tnot.llm\tp.jpg\tc.jpg\te.gif\tnix.txt"

all_jpegs = [x for x in s.split('\t') if '.jpg' in x]

print(all_jpegs)
输出:
['a.jpg','p.jpg','c.jpg']

在评论中提出了一个很好的观点-这将导致对
s=some.file\t此文件编号为.jgp.gif\t somemore.files
。改成

s = "a.jpg\tnot.llm\tp.jpg\tc.jpg\te.gif\tnix.txt\tnot.jpg.gif\tthis.JPG"
better_jpegs = [x for x in s.split('\t') if x.lower().endswith('.jpg')]

print(better_jpegs)

将删除它,并处理
'.JpG'或.JpG'

您可以尝试这个简单的正则表达式

\w+.(?:jpg)

你可以试试这个简单的正则表达式

\w+.(?:jpg)

it制表符分隔(\t),按制表符拆分,检查每个制表符是否以.jpg结尾,完成-请参阅answerit制表符分隔(\t),按制表符拆分,检查每个制表符是否以.jpg结尾,完成-请参阅answerThank谢谢我在找这个。谢谢我在找这个。