Намерете всички JPG имена на пътища в HTML файлове и ги преобразувайте в малки букви

Имам много основни познания за regexp. Търсих и търсих в интернет за това.....

Имам линукс сървър, който харесва само малки имена на файлове и глупаво имам имена на файлове с изображения в главни букви!

Искам групово да намеря всички jpg имена на пътища в моите HTML файлове и да ги конвертирам в малки букви с Regex.

My-File-Name1.jpg трябва да бъде my-file-name1.jpg

Мисля, че имам нужда от регулярен израз, за ​​да ги намеря всички, и друг, който ги замества, преобразувани в малки букви.

Някаква помощ?

РЕДАКТИРАНЕ

@Sniffer ми даде регулярния израз, който получава пътя на името на файла.

В notepad ++ намерете и заменете с помощта на регулярен израз. Можеш да използваш

([\w/-]+)\.jpe?g за намиране на пътища на изображения и

: \L\1 за промяна на малки букви и използване на замяна

\U\2 за промяна на главни букви чрез заместване

Намерих редовния израз с малки/главни букви тук http://sourceforge.net/p/notepad-plus/discussion/331754/thread/ecb11904/


person H4NIO    schedule 21.08.2013    source източник
comment
Дали всички тези имена на файлове съдържат само азбучни знаци като a, b, c и т.н.   -  person Ibrahim Najjar    schedule 21.08.2013
comment
@Sniffer не, те също имат тирета и числа Queen-of-Hearts-1.jpg. Редактирах въпроса си, за да включа това.   -  person H4NIO    schedule 21.08.2013


Отговори (1)


Обикновено бих казал, че използвайте HTML анализатор, който е най-добрият инструмент за работата тук, но тъй като искате само jpg файлове, може да успеете да ги намерите всички, като използвате следното:

([\w/-]+)\.jpe?g
   ^
   |
   |
 As you can see I have added the forward slash / and the dash - to the
 character class, WARNING: the dash - should always be the last character in the
 class, keep that in mind if you have more special characters.

Ще трябва да съпоставите това глобално във вашия файл.

Що се отнася до преобразуването, то не може да се направи с помощта на регулярен израз. Ще трябва да извикате API, който преобразува низ в малки букви, и да го използвате в заснетата група $1.

person Ibrahim Najjar    schedule 21.08.2013
comment
Това грабва само последната секция, напр. -Card.jpg вместо img/Rider-Waite/13-Queen-of-Cups-Minor-Tarot-Card.jpg. Вероятно моя грешка, че не добавих наклонените черти за файловите директории - съжалявам. - person H4NIO; 21.08.2013
comment
Страхотно! Благодаря. Открих, че можете да използвате регулярен израз в notepad++, който ще промени резултатите от търсенето в малки букви. - person H4NIO; 21.08.2013
comment
да Толкова съм щастлив. Благодаря @Sniffer :) Спаси няколко часа/дни от живота ми! - person H4NIO; 21.08.2013
comment
@Hannah Добре дошли, моля, приемете отговора, ако това е така. - person Ibrahim Najjar; 21.08.2013