Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 08.01.2008, 13:25
vladius вне форума Посмотреть профиль Отправить личное сообщение для vladius Найти все сообщения от vladius
  № 1  
Ответить с цитированием
vladius

Регистрация: Sep 2005
Сообщений: 110
По умолчанию разобрать строку с обратным слешем "\"

Здрасть.
не могу корректно разобрать строку Возник вопрос с обратным слешем.
дело в том, что обратный слеш можно отобразить только таким образом "\\"

Код:
loc_str = "csdf\sdfsd\dfsdd\name.exe";
var n1 = loc_str.lastIndexOf("\\");
var n2 = loc_str.lastIndexOf(".");
fname = loc_str.substring(n1, n2);
trace("fname "+fname);
выводится должно name

что не так, подскажите плз


Последний раз редактировалось vladius; 08.01.2008 в 13:31.
Старый 08.01.2008, 13:41
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 2  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Код:
loc_str = "csdf\\sdfsd\\dfsdd\\name.exe";

Старый 08.01.2008, 13:58
vladius вне форума Посмотреть профиль Отправить личное сообщение для vladius Найти все сообщения от vladius
  № 3  
Ответить с цитированием
vladius

Регистрация: Sep 2005
Сообщений: 110
да, я понимаю. это тоже первое, что я хотел сделать.
но исходная строка именно с одинарным слешем.
значит нужно заменить одинарный слеш на двойной. но тут то сталкиваемся с той же проблемой, то и в первом посте.

Код:
loc_str = "csdf\sdfsd\dfsdd\name.exe";
loc_str = ReplaseOneWithEnather(loc_str, "\\", "\\\\");
trace(loc_str)

//параметры: строка, что заменять, на что заменять
function ReplaseOneWithEnather(str, simb1, simb2) {
	var tmp_str = "";
	var tmp_array1 = str.split(simb1);
	for (var i = 0; i<tmp_array1.length; i++) {
		tmp_str += tmp_array1[i];
		if (i != tmp_array1.length-1) {
			tmp_str += simb2;
		}
	}
	return (tmp_str);
}
другими словами никак нельзя найти символ "\"

Старый 08.01.2008, 14:02
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 4  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Не надо ничего подобного делать, работающее решение я привел в первом посте. И то, что исходная строка с одинарными слешами вам только кажется. Прочитайте, что такое одинарный слеш и почему для вывода нормального слеша нужно ставить два.

Старый 08.01.2008, 14:42
2morrowMan вне форума Посмотреть профиль Отправить личное сообщение для 2morrowMan Найти все сообщения от 2morrowMan
  № 5  
Ответить с цитированием
2morrowMan
 
Аватар для 2morrowMan

Регистрация: Aug 2007
Сообщений: 467
Откуда берется loc_str? Возможно там уже стоит "\\", но вы об этом не знаете...

Старый 08.01.2008, 15:00
†‡Paladin‡† вне форума Посмотреть профиль Отправить личное сообщение для †‡Paladin‡† Найти все сообщения от †‡Paladin‡†
  № 6  
Ответить с цитированием
†‡Paladin‡†

Регистрация: Nov 2005
Сообщений: 1,058
Цитата:
Сообщение от 2morrowMan
Откуда берется loc_str? Возможно там уже стоит "\\", но вы об этом не знаете...
омг.. Что значит откуда? Там явное присваивание первой же строчкой. Автор до сих пор не проэкранировал слэш в своем коде.

Старый 08.01.2008, 15:20
vladius вне форума Посмотреть профиль Отправить личное сообщение для vladius Найти все сообщения от vladius
  № 7  
Ответить с цитированием
vladius

Регистрация: Sep 2005
Сообщений: 110
сорри, сам глупость написал.
все решилось.

Создать новую тему Ответ Часовой пояс GMT +4, время: 07:01.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 07:01.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.