Первая буква каждого слова заглавная.

Zlodeys

A-Parser Pro License
A-Parser Pro
Всем привет!
Подскажите пожалуйста как можно сделать вывод в результат Первую букву первого слова заглавная, остальные строчные. И Первая Буква Каждого Слова Заглавная.
В Апарсере встроено только To Uppercase и To Lowercase.
 
Добрый день.
На примере текстэкстрактора с помощью шаблонизатора это делается так:
daikO.png

Шаблон:
Код:
[% FOREACH item IN texts;
    words = item.text.match('(\S+\W*)', 1);
    FOREACH word IN words;
        word.ucfirst;
    END;
    "\n";
END %]

Алгоритм следующий:
  • разбиваем каждый блок текста на слова регулярным выражением, при этом захватываем все символы после слова, которые не являются буквой или цифрой - это делается для того, чтобы сохранить форматирование и учесть ситуации, когда слово идет после скобки к примеру
  • перебираем в цикле все слова и выводим их с .ucfirst (функция ТТ, преобразующая первый символ в заглавный)
  • блоки текста разделем переводом строки
 
Спасибо!

Правда немного не догоняю как переменную ну к примеру $p1.title в NET:HTTP парсере сделать таким образом))
 
Подскажите пожалуйста, реально не могу понять, https://a-parser.com/wiki/template-toolkit/ пару раз уже прочел...
Насчет $p1.title в NET:HTTP
У меня там парсится тайтл. Вот его то и нужно мне форматировать
 
Цикл уберите, p1.title разбивайте на слова:
Код:
[% words = p1.title.match('(\S+\W*)', 1);
FOREACH word IN words;
   word.ucfirst;
END %]
 
Назад
Верх