Как разбить текст по строкам - PullRequest
0 голосов
/ 04 июня 2009

Flex 3.

Я создал объект TextArea. Затем я набрал в нем текст. Затем я получил этот текст, используя свойство TextArea.text.

Как разделить полученный текст по строкам и преобразовать его в массив строк?

Ответы [ 3 ]

1 голос
/ 04 июня 2009

Если «\ n» не работает для вас, попробуйте «\ r» (возврат каретки). Вот некоторый код, демонстрирующий, как это будет работать - просто введите в поле, и вы увидите изменение содержимого массива:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="onCreationComplete(event)">

    <mx:Script>
        <![CDATA[

            import mx.events.CollectionEvent;
            import mx.collections.ArrayCollection;
            import mx.events.FlexEvent;

            [Bindable]
            private var ac:ArrayCollection;

            protected function onCreationComplete(event:FlexEvent):void
            {
                ac = new ArrayCollection();
                ac.addEventListener(CollectionEvent.COLLECTION_CHANGE, onCollectionChange);     
            }

            protected function onKeyUp(event:KeyboardEvent):void
            {
                ac.source = event.target.text.split("\r");
            }

            protected function onCollectionChange(event:CollectionEvent):void
            {
                contents.text = ac.source.join("\r");           
            }

        ]]>
    </mx:Script>

    <mx:TextArea id="input" x="19" y="22" width="273" height="175" keyUp="onKeyUp(event)" />
    <mx:TextArea id="contents" x="112" y="249" width="180" height="175" editable="false" />
    <mx:Label x="19" y="222" text="Array Length:" fontWeight="bold" />
    <mx:Label x="37" y="250" text="Contents:" fontWeight="bold" />
    <mx:Label x="111" y="222" text="{ac.length}" />

</mx:Application>

Надеюсь, это поможет!

0 голосов
/ 04 июня 2009

Согласно этому сайту , символом перевода строки является "\ n". Используя функцию Split () с «\ n», вы сможете разбить строку на массив строк, разделенных переводами строк.

0 голосов
/ 04 июня 2009

Что для вас значит «разделить на строки»? Обычно нужно отсканировать текст на наличие последнего пробела перед текстовой шириной и назвать его строкой.

...