Учитывая текстовый файл многих строк, где поля в строке обозначаются одним символом $
, напишите программу, которая выравнивает каждый столбец полей, гарантируя, что слова в каждом столбце разделены хотя бы одним пробелом. Кроме того, разрешите каждое слово в столбце быть либо оправданным, либо оправданным, либо оправданным по центру в его столбце.
Используйте следующий текст для тестирования своих программ:
Учитывая $ в $ текста $ файл $ из $ многих $ линий где $ поля $ в $ а $ линия $ составляют $ очерчены $ на $ «доллар» в размере $ одноместный $ символа $ написать $ в $ программе что $ совпадет $ каждый $ столбец $ из $ полей от $ обеспечения $, что $ слова $ в $ каждый $ колонка $ являются $ $ разделены на $ по $ мере $ за $ пространство. Кроме того, $ позволяют $ за $ каждого $ слова $ в $ A $ столбец $ до $ быть $ либо $ остался $ оправданный, $ права $ оправдано или $ центр $ оправдана $ в $ его $ колонке.
Обратите внимание, что:
Примеры строк ввода текста могут или не могут иметь завершающие символы доллара. Все столбцы должны иметь одинаковое выравнивание. Последовательные символы пробела, создаваемые рядом с концом строк, несущественны для целей задачи. Текст вывода будет отображаться моноширинным шрифтом в текстовом редакторе или базовом терминале. Минимальное пространство между столбцами должно быть вычислено из текста, а не жестко закодировано. Не требуется добавлять разделительные символы между столбцами или вокруг них.formatText
- это функция.
testString: 'assert(typeof formatText === "function", "formatText
is a function.");'
- text: 'formatText
с указанным выше вводом и «правильным» обоснованием должен formatText
следующее:'
testString: 'assert.strictEqual(formatText(testInput, "right"), rightAligned, "formatText
with the above input and "right" justification should produce the following: ");'
- text: 'formatText
с указанным выше вводом и «левым» обоснованием должен formatText
следующее:'
testString: 'assert.strictEqual(formatText(testInput, "left"), leftAligned, "formatText
with the above input and "left" justification should produce the following: ");'
- text: 'formatText
с указанным выше вводом и выравниванием «центра» должно приводить к следующему:'
testString: 'assert.strictEqual(formatText(testInput, "center"), centerAligned, "formatText
with the above input and "center" justification should produce the following: ");'
```