|
|
|
|
|
для: SHAman
(27.01.2008 в 23:02)
| | спасибо!
кстати, почему-то если использовать через new RegExp(...) - то и этот пример не работает.
А вот если так:
var re=/([A-Za-z]\:\\)([^/]+[\\])(\w+\.\w+)/;
// var re=/^.*(\\|\/)(.*?)$/;
var result=re.exec(str);
alert(RegExp.$3);
// alert(RegExp.$2);
|
то оба работают.. В документации написано, что оба варианта объявления идентичны - а на практике получилось, что нет :( | |
|
|
|
|
|
|
|
для: LouD
(27.01.2008 в 22:32)
| |
ответ в $2 | |
|
|
|
|
|
|
| Есть, казалось бы, простая задача - имею полный локальный путь к файлу - нужно выделить собственно имя файла, без папок и диска.
Написал выражение вида:
var str=document.getElementById("imageFile").value;
var re=new RegExp("([a-z]\:\\)([^/]+[\\])(\w+\.\w+)","i");
var result=re.test(str);
if (result) {
alert(RegExp.$3);
}
|
и ничего...
Я пробовал и чуть другой вариант
var result=re.exec(str);
if (result!=null) {
|
результат аналогичный..
И при этом в конструкторе (http://www.pcre.ru/eval/) все ок - разбирает путь и отдает в $3 имя файла.
http://www.pcre.ru/eval/(%5BA-Za-z%5D%5C%3A%5C%5C)(%5B%5E%262f%3B%5D%2B%5B%5C%5C%5D)(%5Cw%2B%5C.%5Cw%2B%24)%40%3D%23%3D%40101%40%3D%23%3D%40E%3A%5CWeb%20projects%5CMyTest%5Cphp%5Cstart.php/
В чем ошибка, куда копать? | |
|
|
|
|