Regexp & Filenames

Статус
Закрыто для дальнейших ответов.

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
подскажите паттерн для обрезки всего лишнего из строки вида путь\имя_файла, чтобы осталось тока имя_файла?

потомучто то, что у меня есть работает не всегда корректно.

вот так:
Код:
replace(filename,"\\'|\\\\|\\\"|\\`|#|:|\\[|\\]|!|\\?|\\%|\\$|\\>|\\<|\\=", "");
жду ваших предложений.
 

deMone

Злой страшный дядька
Регистрация
30.01.2006
Сообщения
937
если тебе нужно оставить только имя файла, делай как я:


Код:
function fileUploadField(field) {
	// IE возвращает полный путь, а нам нужно только имя файла
	var p=''; var v=field.value;
	if (v.search('/')!=-1) p='/';
	if (v.search('\\\\')!=-1) p='\\';
	if (p!='') {
		index=v.lastIndexOf(p);
		v=v.substr(index+1);
	}
	return v;
}
вызов: <input type="file" name="aaa" onchange="java script:alert(fileUploadField(this));" />
и не пудри мозге регулярками.
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
насчет пудрения... у меня сервер-сайд и мне принцип работы движителя в том, что не как на пхп можно получить уже готовое имя файла, а получемые данные в виде полного пути. то есть надо на серваке отрезать "хвост". есть пути нахождения последнего обратного слэша с одновременным сдвигом указателя... но вот регуляркой в один проход бы :)
 

RollingStone

Member
Регистрация
24.09.2006
Сообщения
13
насчет пудрения... у меня сервер-сайд и мне принцип работы движителя в том, что не как на пхп можно получить уже готовое имя файла, а получемые данные в виде полного пути. то есть надо на серваке отрезать "хвост". есть пути нахождения последнего обратного слэша с одновременным сдвигом указателя... но вот регуляркой в один проход бы :)
<?php

// имя текущего файла
echo basename(__FILE__);

// достаем имя файла из полного пути
echo basename("/home/и прочяя херь/еще каталог/index.php");

// достаем имя файла из URL
$pathArray=parse_url("http://www.internet-technologies.ru/forums/index.php?showtopic=980");
echo basename($pathArray['path']);

?>

это надо-то?
 

deMone

Злой страшный дядька
Регистрация
30.01.2006
Сообщения
937
последний ответ в теме до Вас, RollingStone, был месяц назад. Ваше «решение» уже никому не нужно.
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
решения всякие важны, вот только одно НО - я ведь про регулярку задавал вопрос. будьте внимательны
 

RollingStone

Member
Регистрация
24.09.2006
Сообщения
13
последний ответ в теме до Вас, RollingStone, был месяц назад. Ваше «решение» уже никому не нужно.
уважаемый злой и страшный дядька deMone! не привык искать глазами дату сообщений, это мой косяк. Если решения не нужны закрывайте тему - не будет подобных проблем. И это уже не мой косяк.
 
Статус
Закрыто для дальнейших ответов.
Верх Низ