У меня есть String
: a%sb%sc%s
. Мне нужно форматировать b
до того, как я отформатирую a
или c
, но я не уверен, как или даже если я могу указать только для форматирования b
, оставив остальную часть String
неформатированной.
Другими словами, я пытаюсь сделать это:
String.format(foo, "test");
С результатом:
a%sbtestc%s
Можно ли манипулировать String
как это, или я должен просто использовать String.replace
вместо этого?
Немного более подробно. Конечная String
будет выглядеть примерно так: aA-PARMbB-PARMcC-PARM
а затем используется для получения некоторых данных. a
и c
намного более динамичны, чем b
, поэтому я пытаюсь форматировать b
перед рукой.
Итак, снова. Я пытаюсь добиться следующего:
String.format(foo, "B-PARM");
С результатами:
a%sbB-PARMc%s
Затем отформатируйте остальные:
String.format(formattedFoo, "A-PARM", "C-PARM");
Вы можете сделать свое форматирование пошагово,
String aString = String.format("something %s something else", "a string");
String bString = String.format("...%s...", "test");
String cString = // ....
String completeString = String.format("a%sb%sc%s", aString, bString, cString);
но опять же, мне нужно задаться вопросом, что происходит, и является ли это проблемой XY, которая лучше всего решается совершенно другим подходом. Подумайте о том, чтобы дать нам подробную информацию о общей проблеме, которую вы пытаетесь решить, и, возможно, не о тактике кода, которую вы используете, чтобы попытаться ее решить.