![]() |
|
||||||||||
|
|||||
|
Регистрация: Feb 2011
Сообщений: 29
|
Вообще есть переменная типа String, в которой содержаться текст (длинна текста не фиксирована). Как можно обрезать текст в переменной на 3 символа?
Например: Нужно получить переменную Text = "Текст". |
|
|||||
|
Регистрация: Feb 2011
Сообщений: 29
|
Написал вот так:
Но выдаёт ошибку при компиляции: 1180: Вызов предположительно неопределенного метода substring. 1180: Вызов предположительно неопределенного метода length. Может какого то класса не хватает? |
|
|||||
|
Регистрация: Jun 2008
Адрес: курский вокзал
Сообщений: 1,114
|
Читаем и смотри примеры кода - http://help.adobe.com/ru_RU/AS3LCR/F...ubstring%28%29
__________________
Я просто добрый шутник. |
|
|||||
|
Регистрация: Feb 2011
Сообщений: 29
|
Спасибо iNils. Всё работает
|
|
|||||
|
Регистрация: Mar 2011
Сообщений: 1
|
Всем доброго дня!
А у меня такой вопрос: как порезать длину выводимого текста, понятно... а вот если надо отрезать не определенное кол-во символов, а такое, чтобы при выводе оставались целые слова. Допустим, текст символов на 300. Надо выводить не больше 100, но при этом нельзя выводить в конце часть слова! Как будет выглядеть функция? Спасибо! |
|
|||||
|
Регистрация: Nov 2009
Адрес: в златоглавой
Сообщений: 745
|
package { import flash.display.Sprite; public class Main extends Sprite { private var textString:String; private var returnString:String; public function Main () { textString = "Первое слово, второе слово, пятое слово, десятое слово, траляля, а вот и обрубаемое СЛОВО"; trace (textString); trace ("Рубим по 85 символу, это буква " + textString.charAt(85)); trace (getString()); } private function getString():String { for (var i:uint = 85; i > 0; i--) { if (textString.charAt(i) == " ") { returnString = textString.substring (0, i); break; } } return returnString; } } }
__________________
Нормально делай — нормально будет! |
|
|||||
|
Lorem ipsum
|
package { import flash.display.Sprite; public class ShortTest extends Sprite { public function ShortTest() { var text:String = "Первое слово, второе слово, пятое слово, десятое слово, траляля, а вот и обрубаемое СЛОВО"; var word:Array = text.split(" "); var cut:int = 85; var res:String = word[0]; var i:int = 1; while (word[i] && (res.length + word[i].length) <= cut) { res += " " + word[i++]; } trace(res); } } }
__________________
Поймай яблоко 2! |
|
|||||
|
Негуру
администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
|
При это брать только первую группу.
Пример test ('А у меня такой вопрос: как порезать длину выводимого текста, понятно... а вот если надо отрезать не определенное кол-во символов, а такое, чтобы при выводе оставались целые слова. Допустим, текст символов на 300. Надо выводить не больше 100, но при этом нельзя выводить в конце часть слова!') test ('In this two-part tutorial, Adobe Senior Principal Scientist Gregg Wilensky helps you perfect your masking and compositing skills. Learn how to use Photoshop CS5 to obtain high-quality image masks and image composites using a simple workflow. See how to use a combination of selection tools, such as Quick Selection or the enhanced Color Range Selection along with the newly revised Refine Edge tool.') test ('short') function test (str):void { var strShort:String = str.replace(/^(.{1,100})( |$)(.+)?/gm, '$1'); trace (strShort.length + ':', strShort + '...') } |
![]() |
![]() |
Часовой пояс GMT +4, время: 09:05. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|