вы можете использовать менеджер компоновки с компоновкой сетки и декаратором элементов пространства сетки для вашего решения. Простой пример сетки Android с использованием RecyclerView с GridLayoutManager (как и старый GridView) Еще один вариант, если вам нужно расширить свои атрибуты. Вы можете использовать для помощи некоторые сторонние библиотеки. Просто, как показано ниже. https://github.com/alibaba/vlayout
Некоторые из других ответов не работали на мою версию sed. Переключение положения &
и \n
действительно работал.
sed 's/regexp/\n&/g'
Править: Это, кажется, не работает над OS X, если Вы не устанавливаете gnu-sed
.
В sed Вы не можете добавить новые строки в потоке вывода легко. Необходимо использовать строку продолжения, которая является неловкой, но она работает:
$ sed 's/regexp/\
&/'
Пример:
$ echo foo | sed 's/.*/\
&/'
foo
Посмотрите здесь для деталей. Если Вы хотите что-то немного менее неловкое, Вы могли бы попытаться использовать perl -pe
с группами соответствия вместо sed:
$ echo foo | perl -pe 's/(.*)/\n$1/'
foo
$1
относится к первой подобранной группе в регулярном выражении, где группы находятся в круглых скобках.
в sed можно сослаться на группы в шаблоне с "\1", "\2".... поэтому, если шаблоном, который Вы ищете, является "ШАБЛОН", и Вы хотите вставить, "ПРЕЖДЕ" перед ним, можно использовать без выхода
sed 's/(PATTERN)/BEFORE\1/g'
т.е.
sed 's/\(PATTERN\)/BEFORE\1/g'