1

ファイルのタイトル画像を置き換える方法を教えてください。画像のタイトル部分を置き換える方法を見つけようとしています

$rem = array('-','_','%','+','img','photo','photos','picture','pictures','image','images','jpg','jpeg','png','bmp','copy');
$title = str_replace($rem,' ',$title);
$title = preg_replace("@\\b[a-z0-9]\\b ?@i", "", $title);

結果

2015_ferrari_f430_18_1600.jpg -- > 2015-ferrari-f430-18-1600.jpg
Wimmer-RS-Ferrari-F430-Scuderia-1.jpg --> wimmer-rs-ferrari-f430-scuderia.jpg
3-Ferrari-F430-Stradale-Spy_1035.jpg -- > ferrari-f430-stradale-spy-1035.jpg
Auto-Veloce-Ferrari-F430-SVR-3.jpg --> auto-veloce-ferrari-f430-svr.jpg
Auto-Veloce-Ferrari-F430-SVR-8-1024x692.jpg --> auto-veloce-ferrari-f430-svr-1024x692.jpg

how to can be it..
2015-ferrari-f430.jpg
wimmer-rs-ferrari-f430-scuderia.jpg
ferrari-f430-stradale-spy.jpg
auto-veloce-ferrari-f430-svr.jpg
auto-veloce-ferrari-f430-svr.jpg
4

1 に答える 1

1

正規表現パターンを変更してください。

$title = preg_replace("/[_\-\d]+.jpg$/", ".jpg", $title);

しかし、置換の標準パターンがないため、これはすべての文字列に対して機能するとは限りません (たとえば、2015-ferrari-f430_18_1600.jpgandでは機能しませんAuto-Veloce-Ferrari-F430-SVR-8-1024x692.jpg)。

ダッシュの後の最後の数字 ( を含む) を置き換えたい場合はx1024x768これを試すこともできます。

$title = preg_replace("/(?:-|_)[_x\-\d]+.jpg$/", ".jpg", $title);
于 2013-01-03T02:54:37.547 に答える