Разбивка длинных строк

Фото автора =) 08.05.2007 от ROM

Задача:
Есть неопределенной длины длинная строка. (ну и сказал =). Надо разбить эту строку на несколько.
Решаем:

Есть 3 варианта решения проблемы длинной строки.
1. Использовать регэкспы.
2. Написать рекурсивную функцию
3. Использовать средства *никсов

Первый пункт конечно хорошо, но если с регэкспами туго, то он совсем не годится.
Второй пункт тоже ничего, но код получится длинный и долгий.
А третий пункт соответсвует unix-way: зачем придумывать своё, если можно использовать уже сделанное?
Вот решение:

@a = `echo $txt2 | fold -s -w $textmax`

Получаем в массиве @a строки, разбитые по пробелам, в примерно нужной нам позиции.
Рекомендую почитать “fold —help” как минимум ;)

P.S. Может кто подскажет решение регепспами?

P.S. #2 Решил добавить пример:

#!/usr/bin/perl $txt2="123456 7890qwer tyuiop 12345678901"; $textmax = 10;@a = `echo $txt2 | fold -s -w $textmax`; # массив с разбитой фразой chomp(@a); # удаляем переводы строк $txt3 = ""; foreach (@a) { # перебираем массив и формируем выходную строку $txt3 = $txt3 . $_ . " "; }; print "$txt3\n";


Популярность: 16%

Подпишитесь: rss icon RSS Записей rss iconRSS комментариев.
Понравился пост? Поддержи сайт!

Рубрики: Perl |

Оставить комментарий

Подпишитесь, пожалуйста:

XHTML: Вы можете использовать эти теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Заметьте: Включена проверка комментариев. Нет смысла повторно отправлять комментарий.


Рубрики:

Управление:




Рейтинг блогов
Рейтинг блогов
Рейтинг блогов
Яндекс цитирования
Каталог блогов Blogdir.ru
количество читателей онлайн и всего


Я - на Карте
Каждому своё…
Блог о jQuery, Linux и немного программировании