String?

Программирование на Юнити.

String?

Сообщение MediaMen 13 май 2009, 09:53

Есть ли в Юнити возможность работать со строками? Такие команды в JavaScript как split или charAT не работают? Можно ли их чем то заменить? Конкретно, нужно из строки выдернуть два первых символа, подскажите как сделать?
Аватара пользователя
MediaMen
UNIт
 
Сообщения: 85
Зарегистрирован: 13 апр 2009, 05:49

Re: String?

Сообщение PHPDog2009 13 май 2009, 11:00

MediaMen писал(а):Есть ли в Юнити возможность работать со строками? Такие команды в JavaScript как split или charAT не работают? Можно ли их чем то заменить? Конкретно, нужно из строки выдернуть два первых символа, подскажите как сделать?

я видел, что юнити поддерживает С и JavaScript так что всё должно быть...
Скажи-ка дядя, ведь не даром
Винда, спалённая пожаром,
Пингвинам отдана?
Изображение
Аватара пользователя
PHPDog2009
Герой Форума
 
Сообщения: 107
Зарегистрирован: 08 май 2009, 10:24
Откуда: Россия
  • Сайт
  • ICQ

Re: String?

Сообщение fox 13 май 2009, 11:02

А ты пробовал на С#? Посмотри тут http://msdn.microsoft.com/ru-ru/library/c84eby0h.aspx
Либо если тебе нравится JavaScript, вот пример как выдернуть первые два символа
Код: Выделить всё
...
var s : String = "f1fgttg";
var s1 : String = "" + s[0] + s[1];
Debug.Log(s1); //
...
Добавить foxumkov в Skype
Мои проекты:
Turbodrive
Изображение

Изображение
Аватара пользователя
fox
UNITрон
 
Сообщения: 255
Зарегистрирован: 07 ноя 2008, 13:02
Откуда: Питер
  • ICQ

Re: String?

Сообщение MediaMen 13 май 2009, 11:07

Спасибо, Fox, то что надо
Аватара пользователя
MediaMen
UNIт
 
Сообщения: 85
Зарегистрирован: 13 апр 2009, 05:49

Re: String?

Сообщение MediaMen 14 май 2009, 04:27

А скажите можно ли сделать наоборот, выдернуть часть строки без первых двух символов, не используя цикл для сложения всех нужных символов типа как в Lingo:
put text.char[3..string.length]
Аватара пользователя
MediaMen
UNIт
 
Сообщения: 85
Зарегистрирован: 13 апр 2009, 05:49

Re: String?

Сообщение Neodrop 14 май 2009, 06:29

http://msdn.microsoft.com/ru-ru/library ... mbers.aspx

Имя Описание
Clone Возвращает ссылку на данный экземпляр класса String.
Compare Перегружен. Сравнивает два заданных объекта String и возвращает целое число, которое показывает их связь друг с другом в порядке сортировки.
CompareOrdinal Перегружен. Сравнивает два объекта String, оценивая числовые значения соответствующих объектов Char в каждой строке.
CompareTo Перегружен. Сравнивает данный экземпляр с заданным объектом или строкой String и возвращает целое число, которое показывает, расположен ли данный экземпляр перед, после или на той же позиции в порядке сортировки, что и заданный объект или строка String.
Concat Перегружен. Объединяет один или несколько экземпляров класса String или представления в виде String значений одного или нескольких экземпляров Object.
Contains Возвращает значение, указывающее, равен ли данный экземпляр заданному объекту или значению типа String.
Copy Создает новый экземпляр String, имеющий то же значение, что и заданный экземпляр String.
CopyTo Копирует заданное число знаков начиная с указанной позиции в этом экземпляре до указанной позиции в массиве знаков Юникода.
EndsWith Перегружен. Определяет, совпадает ли конец экземпляра String с указанной строкой.
Equals Перегружен. Определяет, равны ли значения двух объектов String.
Finalize Позволяет объекту Object попытаться освободить ресурсы и выполнить другие операции очистки, перед тем как объект Object будет утилизирован в процессе сборки мусора. (Унаследовано от Object.)
Format Перегружен. Заменяет каждый элемент формата в указанном объекте String текстовым эквивалентом значения соответствующего объекта.
GetEnumerator Извлекает объект, который может выполнять итерацию отдельных знаков данной строки.
GetHashCode Возвращает хэш-код для этой строки. (Переопределяет Object..::.GetHashCode()()().)
GetType Возвращает объект Type для текущего экземпляра. (Унаследовано от Object.)
GetTypeCode Возвращает TypeCode для класса String.
IndexOf Перегружен. Возвращает индекс первого вхождения String или одного или нескольких знаков в данной строке.
IndexOfAny Перегружен. Возвращает индекс первого обнаруженного в данном экземпляре знака из указанного массива знаков Юникода.
Insert Вставляет указанный экземпляр String в данный экземпляр по заданному индексу.
Intern Извлекает системную ссылку на указанный объект String.
IsInterned Извлекает ссылку на указанный объект String.
IsNormalized Перегружен. Указывает, находится ли данная строка в определенной форме нормализации Юникода.
IsNullOrEmpty Указывает, является ли заданный объект String значением nullNothingnullptrссылка null (Nothing в Visual Basic) или строкой Empty.
Join Перегружен. Вставляет заданный разделитель типа String между элементами заданного массива String, создавая одну сцепленную строку.
LastIndexOf Перегружен. Возвращает индекс последнего вхождения указанного знака Юникода или String в пределах данного экземпляра.
LastIndexOfAny Перегружен. Возвращает индекс последнего вхождения в данном экземпляре какого-либо одного или нескольких знаков, указанных в массиве знаков Юникод.
MemberwiseClone Создает неполную копию текущего объекта Object. (Унаследовано от Object.)
Normalize Перегружен. Возвращает новую строку, двоичное представление которой находится в определенной нормализованной форме Юникода.
PadLeft Перегружен. Выравнивает знаки в данном экземпляре по правому краю, добавляя слева пробелы или указанные знаки Юникода до указанной общей длины.
PadRight Перегружен. Выравнивает знаки в данной строке по левому краю, добавляя справа пробелы или указанные знаки Юникода до указанной общей длины.
Remove Перегружен. Удаление заданного числа знаков из данного экземпляра.
Replace Перегружен. Заменяет все вхождения указанного знака Юникода или String в данном экземпляре другим заданным знаком Юникода или String.
Split Перегружен. Возвращает строковый массив, содержащий подстроки данного экземпляра, разделенные элементами заданной строки или массива знаков Юникода.
StartsWith Перегружен. Определяет, совпадает ли начало экземпляра String с указанной строкой.
Substring Перегружен. Извлекает подстроку из данного экземпляра.
ToCharArray Перегружен. Копирует знаки данного экземпляра в массив знаков Юникода.
ToLower Перегружен. Возвращает копию этого объекта String, переведенную в нижний регистр.
ToLowerInvariant Возвращает копию этого объекта String, переведенную в нижний регистр, используя правила учета регистра инвариантного языка и региональных параметров.
ToString Перегружен. Преобразует значение данного экземпляра в String.
ToUpper Перегружен. Возвращает копию этого объекта String, переведенную в верхний регистр.
ToUpperInvariant Возвращает копию этого объекта String, переведенную в верхний регистр, используя правила учета регистра инвариантного языка и региональных параметров.
Trim Перегружен. Удаляет все начальные и конечные вхождения заданных наборов знаков из текущего объекта String.
TrimEnd Удаляет все конечные вхождения набора знаков, заданного в виде массива, из текущего объекта String.
TrimStart Удаляет все начальные вхождения набора знаков, заданного в виде массива, из текущего объекта String.
В начало страницы
Операторы
Имя Описание
Equality Определяет, равны ли значения двух указанных объектов String.
Inequality Определяет, различаются ли значения двух указанных объектов String.
В начало страницы
Методы расширения
Имя Описание
Aggregate Применяет к последовательности агрегатную функцию. (Определено в Enumerable.)
All Проверяет, все ли элементы последовательности удовлетворяют условию. (Определено в Enumerable.)
Any Перегружен.
AsEnumerable Возвращает входные данные, приведенные к типу IEnumerable<(Of <(T>)>). (Определено в Enumerable.)
AsQueryable Перегружен.
Average Перегружен.
Cast Преобразовывает элементы объекта IEnumerable в заданный тип. (Определено в Enumerable.)
Concat Объединяет две последовательности. (Определено в Enumerable.)
Contains Перегружен.
Count Перегружен.
DefaultIfEmpty Перегружен.
Distinct Перегружен.
ElementAt Возвращает элемент по указанному индексу в последовательности. (Определено в Enumerable.)
ElementAtOrDefault Возвращает элемент по указанному индексу в последовательности или значение по умолчанию, если индекс вне допустимого диапазона. (Определено в Enumerable.)
Except Перегружен.
First Перегружен.
FirstOrDefault Перегружен.
Intersect Перегружен.
Last Перегружен.
LastOrDefault Перегружен.
LongCount Перегружен.
Max Перегружен.
Min Перегружен.
OfType Выполняет фильтрацию элементов объекта IEnumerable по заданному типу. (Определено в Enumerable.)
Reverse Изменяет порядок элементов последовательности на противоположный. (Определено в Enumerable.)
SequenceEqual Перегружен.
Single Перегружен.
SingleOrDefault Перегружен.
Skip Пропускает заданное число элементов в последовательности и возвращает остальные элементы. (Определено в Enumerable.)
SkipWhile Перегружен.
Sum Перегружен.
Take Возвращает указанное число подряд идущих элементов с начала последовательности. (Определено в Enumerable.)
TakeWhile Перегружен.
ToArray Создает массив из объекта IEnumerable<(Of <(T>)>). (Определено в Enumerable.)
ToList Создает список List<(Of <(T>)>) из объекта IEnumerable<(Of <(T>)>). (Определено в Enumerable.)
Union Перегружен.
Where Перегружен.
В начало страницы
Поля
Имя Описание
Empty Представляет пустую строку. Это поле доступно только для чтения.
В начало страницы
Свойства
Имя Описание
Chars Возвращает знак в указанной позиции в текущем объекте String.
Length Возвращает число знаков в текущем объекте String.
В начало страницы
Явные реализации интерфейса
Имя Описание
IEnumerable<(Of <(Char>)>)..::.GetEnumerator Возвращает перечислитель, выполняющий итерацию элементов текущего объекта String.
IEnumerable..::.GetEnumerator Возвращает перечислитель, выполняющий итерацию элементов текущего объекта String.
IConvertible..::.ToBoolean Инфраструктура. Описание этого элемента см. в разделе, посвященном ToBoolean.
IConvertible..::.ToByte Инфраструктура. Описание этого элемента см. в разделе, посвященном ToByte.
IConvertible..::.ToChar Инфраструктура. Описание этого элемента см. в разделе, посвященном ToChar.
IConvertible..::.ToDateTime Инфраструктура. Описание этого элемента см. в разделе, посвященном ToDateTime.
IConvertible..::.ToDecimal Инфраструктура. Описание этого элемента см. в разделе, посвященном ToDecimal.
IConvertible..::.ToDouble Инфраструктура. Описание этого элемента см. в разделе, посвященном ToDouble.
IConvertible..::.ToInt16 Инфраструктура. Описание этого элемента см. в разделе, посвященном ToInt16.
IConvertible..::.ToInt32 Инфраструктура. Описание этого элемента см. в разделе, посвященном ToInt32.
IConvertible..::.ToInt64 Инфраструктура. Описание этого элемента см. в разделе, посвященном ToInt64.
IConvertible..::.ToSByte Инфраструктура. Описание этого элемента см. в разделе, посвященном ToSByte.
IConvertible..::.ToSingle Инфраструктура. Описание этого элемента см. в разделе, посвященном ToSingle.
IConvertible..::.ToType Инфраструктура. Описание этого элемента см. в разделе, посвященном ToType.
IConvertible..::.ToUInt16 Инфраструктура. Описание этого элемента см. в разделе, посвященном ToUInt16.
IConvertible..::.ToUInt32 Инфраструктура. Описание этого элемента см. в разделе, посвященном ToUInt32.
IConvertible..::.ToUInt64 Инфраструктура. Описание этого элемента см. в разделе, посвященном ToUInt64.
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: String?

Сообщение MediaMen 14 май 2009, 07:39

Клёво! А на JavaScript?
Аватара пользователя
MediaMen
UNIт
 
Сообщения: 85
Зарегистрирован: 13 апр 2009, 05:49

Re: String?

Сообщение alexmarch 14 май 2009, 07:44

MediaMen писал(а):Клёво! А на JavaScript?

В учебнике по жабе :)
Аватара пользователя
alexmarch
UNITрон
 
Сообщения: 286
Зарегистрирован: 04 май 2009, 19:54

Re: String?

Сообщение Neodrop 14 май 2009, 07:58

Большинство операндов совпадает. Есть такое слово "эксперимент". :ymparty:
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт

Re: String?

Сообщение MediaMen 14 май 2009, 09:19

В том то и дело, что не все совпадает, в хелпе к юнити я ответа не нашел, split или charAT не работают, если кто знает ответ, напишите пожалуйста. Предложения могут быть разной и достаточно большой длинны, первые или последнии символы несут служебную информацию как их получить Fox показал, длинну строки мы тоже знаем, как взять часть строки без нескольких первых или последних символов?
Аватара пользователя
MediaMen
UNIт
 
Сообщения: 85
Зарегистрирован: 13 апр 2009, 05:49

Re: String?

Сообщение fox 14 май 2009, 10:48

если все таки очь хотца на Джаве то либо писать свои функции с перебором, либо заморачиваться через GUIText
Код: Выделить всё
// Shows how to read typing input from the keyboard
// (eg. the user entering his name).
// You need to attach this script to a GUIText object.
function Update () {
   for (var c : char in Input.inputString) {
     // Backspace - Remove the last character
      if (c == "\b") {
         if (guiText.text.Length != 0)
         guiText.text = guiText.text.Substring(0, guiText.text.Length - 1);
      }
      // End of entry
      else if (c == "\n") {
            print ("User entered his name: " + guiText.text);
       }
         // Normal text input - just append to the end
       else {
           guiText.text += c;
       }
    }
}


а вот так это будет на Шарпе
Код: Выделить всё
string s = "sgsv";
Debug.Log(s.Substring(1, s.Length - 1));
Добавить foxumkov в Skype
Мои проекты:
Turbodrive
Изображение

Изображение
Аватара пользователя
fox
UNITрон
 
Сообщения: 255
Зарегистрирован: 07 ноя 2008, 13:02
Откуда: Питер
  • ICQ

Re: String?

Сообщение alexmarch 14 май 2009, 15:25

Блин. теперь я нефига не понимаю.
Объясните мне схему как работаю скрипты в юнити.
Я думал тема такая.
Я работаю в среде С# и юзаю классы от движка юнити.
И все, то есть все что есть в С# естественно работает. Весь его синтаксис, то есть я могу работать с переменными типо char и т.д.
как я и привык в шарпе.
Я также предполагал что могу подключить Движок как библиотеку классов на С++ и вызывать нужные мне функции и писать на С++
Где я неправ поправте меня?
Аватара пользователя
alexmarch
UNITрон
 
Сообщения: 286
Зарегистрирован: 04 май 2009, 19:54

Re: String?

Сообщение Neodrop 14 май 2009, 16:14

Имея ПРО лицензию, подключай любые библиотеки на С++
char это не string.
[unity 3D] Unity работает с string. Не с char.
Добавить neodrop в Skype
Изображение
"Спасибо!" нашему порталу, вы сможете сказать ЗДЕСЬ.
Если проблема не решается честно, нужно её обмануть! || Per stupiditas at Astra!
Страх порождает слабость. Бесстрашных поражают пули.
Протратившись на блядях байтах, на битах не экономят.
Аватара пользователя
Neodrop
Админ
 
Сообщения: 8480
Зарегистрирован: 08 окт 2008, 15:42
Откуда: Питер
Skype: neodrop
  • Сайт


Вернуться в Скрипты

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5