2017-03-28 2 views
0

나는 수많은 URL의 모습이이이 (1),이 (2)과 같이 일부 :는 preg_match 특정 URL - PHP

1) http://URL.com/gallery/image.png

2) http://URL.com/gallery/#/image.png

여기서 #은 번호가 매겨진 폴더를 나타냅니다.

은 다음과 같습니다 그래서 URL에 thumb_을 추가하고 싶습니다 :

1) http://URL.com/gallery/thumb_image.png

2) http://URL.com/gallery/#/thumb_image.png

어떻게 이런 짓을 했을까?

한 가지 고려해야 할 점은 이미지 파일 앞에있는 폴더는 숫자가 될 수 있으며 이미지 파일의 이름이 항상 "image.png"로 지정되지 않는다는 것입니다. 나는 그것을 예로 들었다. 대체 문자열로

(\w+\.\w+)$ 

:

+0

그래서 당신은 웹 서버 재 작성 규칙을 원하는, 또는 실제로 프로그래밍 방식으로 파일의 이름을 변경을 사용할 수 있을까? –

답변

0

이 같은 간단한 정규식을 사용할 수 있습니다

thumb_\1 

Working demo

PHP 코드

$re = '/(\w+\.\w+$)/m'; 
$str = 'http://URL.com/gallery/image.png 
http://URL.com/gallery/#/image.png'; 
$subst = 'thumb_\\1'; 

$result = preg_replace($re, $subst, $str); 

echo "The result of the substitution is ".$result; 
+0

완벽하게 작동합니다. – stylusss

0

당신은 preg_replace이다 기능

<?PHP 
$input_lines="http://URL.com/gallery/#/image.png"; 
ECHO preg_replace("/\w+\.\w+$/", "thumb_$0", $input_lines); 
?>