split принимает регулярное выражение. Итак:
String[] ar = sb.toString().split("\\s+");
Строка \\s
является регулярным выражением для «любого пробела», и + равен: 1 или более. Если вы хотите разделить только пробелы (а не переводы строк, табуляции и т. Д.), Попробуйте: String[] ar = sb.toString().split(" +");
, что буквально: «разделить на один или несколько пробелов».
Этот трюк работает практически для любого разделителя. Например, разделить запятыми? Попробуйте: .split("\\s*,\\s*")
, то есть: 0 или более пробелов, запятая, за которой следует 0 или более пробелов (и регулярные выражения занимают столько, сколько могут).
Обратите внимание, что этот трюк НЕ избавляет от начальных и конечных пробелов. Но чтобы сделать это, используйте отделку. Собираем все вместе:
String[] ar = sb.toString().trim().split("\\s+");
и для запятых:
String[] ar = sb.toString().trim().split("\\s*,\\s*");
Можно использовать архив мерзавца, поскольку он принимает управление пути. Так, в Вашем рычаге постобновления можно сделать что-то как
git archive $SHA HTML | (cd dir/where/html/should/go && tar x)
это сначала создает tarball subdir и каналы, что tarball к tar управляют к untar этим в указанном каталоге
(просто предложение, поскольку это не может быть применимо в Вашей точной конфигурации),
Вы могли бы рассмотреть принятие этого Сфокусированного на сети Рабочего процесса Мерзавца, который, вместо копирования, действительно продвигает Ваш repo непосредственно на веб-каталоге.
(От Joe MALLER)
Менее сложный: Используя Мерзавца для поддержания веб-сайта (Daniel MIESSLER):
У Daniel MIESSLER есть обновленная версия того же самого процесса:
Другие предложения доступны в этом ТАК вопрос, как этот сценарий постобновления, упомянутый в Мерзавце FAQ.