Я пытаюсь объединить две последовательные строки, только если сумма слов двух строк (слов, определенных как последовательные символы, разделенные пробелами или знаком конца строки) меньше 20 слов.
ПримерВвод:
1This line has five words.
2This line has unfortunately six words.
3This line has also six words.
4The above three lines have a total of 18 words, which is less than 20, and should be combined into one line.
5This line has only 6 words.
Требуемый вывод:
1This line has five words. 2This line has unfortunately six words. 3This line has also six words.
4The above three lines have a total of 18 words, which is less than 20, and should be combined into one line.
5This line has only 6 words.
У меня есть следующий код в качестве отправной точки, но я не знаю, как сделать условие, чтобы он проверял обе последовательные строки.
awk '{while (sum(NF + NF+1) > 20) {sub ("\n", "")}}1'
Две проблемы это while (sum (NF + NF + 1)> 20) ... как мне сделать так, чтобы он проверял сумму двух последовательных строк? Вторая проблема ... по какой-то причине sub ("\ n", "") не избавляется от символа новой строки в конце строки, даже когда я пробую его в одной строке.
Спасибо.