在 Notepad++ 中使用正则表达式查找图像字符串
Find image strings with Regex in Notepad++
请提供可用于扫描任何类型图像字符串的通用语法,其中,只需传入正确的文件类型扩展名即可获得匹配项。一种更理想的方法(虽然不是必需的)是一种传递多个文件扩展名类型的方法。
在 Google Chrome 浏览器中导航到文件目录时生成以下内容:
Name Size Date Modified
[parent directory]
BamboNature.jpg 40.0 kB 10/22/15, 2:42:00 PM
bjs1.jpg 80.7 kB 10/22/15, 3:04:55 PM
BroodyChick.jpg 55.2 kB 10/22/15, 2:42:16 PM
EarthsBest01.jpg 95.9 kB 10/22/15, 3:04:38 PM
HonestDiaper.jpg 42.5 kB 10/22/15, 2:42:29 PM
Huggies_1.jpg 44.3 kB 10/22/15, 3:04:28 PM
Huggies_2.jpg 46.7 kB 10/22/15, 3:04:02 PM
Luvs_2.jpg 53.0 kB 10/22/15, 2:01:07 PM
Luvs.jpg 49.6 kB 10/22/15, 3:03:48 PM
Munchkin.jpg 40.6 kB 10/22/15, 3:03:31 PM
Pampers.jpg 49.6 kB 10/22/15, 3:03:24 PM
Pampers02.jpg 40.2 kB 10/22/15, 3:03:15 PM
parents-choice-unscented-ba.jpg 42.6 kB 10/22/15, 2:45:16 PM
Target-diapers.jpg 41.0 kB 10/22/15, 2:43:05 PM
Thumbs.db 63.5 kB 10/22/15, 3:06:20 PM
所需的输出将是删除除图像以外的所有内容,在本例中,所有图像都具有 .jpg
文件扩展名类型。
预期结果:
BamboNature.jpg
bjs1.jpg
BroodyChick.jpg
EarthsBest01.jpg
HonestDiaper.jpg
Huggies_1.jpg
Huggies_2.jpg
Luvs_2.jpg
Luvs.jpg
Munchkin.jpg
Pampers.jpg
Pampers02.jpg
parents-choice-unscented-ba.jpg
Target-diapers.jpg
同样,这应该能够应用于任何文件类型,并且将成为一个独立的正则表达式,以消除文件目录列表中的混乱。
我可能会使用这样的正则表达式。我写它是为了让它甚至可以处理其中包含 space 的文件名。如果同时做全文,记得开启多行。
^.*?\.\S{1,3}
描述
^.*?\.\S{1,3}
Beginning of line or string
Any character, any number of repetitions, as few as possible
Literal .
Anything other than whitespace, between 1 and 3 repetition
特别是对于记事本++,您可以使用查找和替换功能使用这些。确保取消选中“。匹配换行符”然后执行:
Find what : (^.*?\.\S{1,3})(.*)
Replace with :
请提供可用于扫描任何类型图像字符串的通用语法,其中,只需传入正确的文件类型扩展名即可获得匹配项。一种更理想的方法(虽然不是必需的)是一种传递多个文件扩展名类型的方法。
在 Google Chrome 浏览器中导航到文件目录时生成以下内容:
Name Size Date Modified
[parent directory]
BamboNature.jpg 40.0 kB 10/22/15, 2:42:00 PM
bjs1.jpg 80.7 kB 10/22/15, 3:04:55 PM
BroodyChick.jpg 55.2 kB 10/22/15, 2:42:16 PM
EarthsBest01.jpg 95.9 kB 10/22/15, 3:04:38 PM
HonestDiaper.jpg 42.5 kB 10/22/15, 2:42:29 PM
Huggies_1.jpg 44.3 kB 10/22/15, 3:04:28 PM
Huggies_2.jpg 46.7 kB 10/22/15, 3:04:02 PM
Luvs_2.jpg 53.0 kB 10/22/15, 2:01:07 PM
Luvs.jpg 49.6 kB 10/22/15, 3:03:48 PM
Munchkin.jpg 40.6 kB 10/22/15, 3:03:31 PM
Pampers.jpg 49.6 kB 10/22/15, 3:03:24 PM
Pampers02.jpg 40.2 kB 10/22/15, 3:03:15 PM
parents-choice-unscented-ba.jpg 42.6 kB 10/22/15, 2:45:16 PM
Target-diapers.jpg 41.0 kB 10/22/15, 2:43:05 PM
Thumbs.db 63.5 kB 10/22/15, 3:06:20 PM
所需的输出将是删除除图像以外的所有内容,在本例中,所有图像都具有 .jpg
文件扩展名类型。
预期结果:
BamboNature.jpg
bjs1.jpg
BroodyChick.jpg
EarthsBest01.jpg
HonestDiaper.jpg
Huggies_1.jpg
Huggies_2.jpg
Luvs_2.jpg
Luvs.jpg
Munchkin.jpg
Pampers.jpg
Pampers02.jpg
parents-choice-unscented-ba.jpg
Target-diapers.jpg
同样,这应该能够应用于任何文件类型,并且将成为一个独立的正则表达式,以消除文件目录列表中的混乱。
我可能会使用这样的正则表达式。我写它是为了让它甚至可以处理其中包含 space 的文件名。如果同时做全文,记得开启多行。
^.*?\.\S{1,3}
描述
^.*?\.\S{1,3}
Beginning of line or string
Any character, any number of repetitions, as few as possible
Literal .
Anything other than whitespace, between 1 and 3 repetition
特别是对于记事本++,您可以使用查找和替换功能使用这些。确保取消选中“。匹配换行符”然后执行:
Find what : (^.*?\.\S{1,3})(.*)
Replace with :