【问题标题】:How to move String block of text xTab spaces to the right in Java?如何在Java中将文本xTab空格的字符串块向右移动?
【发布时间】:2022-02-02 18:25:07
【问题描述】:

如果我有一个完整的文本块作为String,其中包含几个换行符。

例如:System.out.println(myString) 会给出:

<http-request>
  <param1>value</param>
  <param2>value</param>
</http-request>

而我想要做的是将整个块的三个制表符空格放在右边...

完成这项工作的最佳方法是什么?

【问题讨论】:

  • 请不要在问题中添加诸如 "Thnx!" 之类的噪音。

标签: java text-alignment


【解决方案1】:

没有在代码中尝试过,但听起来 replace(regex, string) 应该可以工作。 只需使用 replace("\n", "\n\t\t\t") -> 每个制表符空间一个 \t。

(从 String 的标准库中替换)

【讨论】:

  • 您还需要在第一行的开头添加“\t\t\t”。
  • 是的,没错。但我想这很好用! - 也应该是 .replaceAll()
【解决方案2】:

从 java 12 开始,您可以使用 String.indent() 方法。例如

public static void main(String[] args) {
    System.out.println("""
            <http-request>
              <param1>value</param>
              <param2>value</param>
            </http-request>
            """.indent(8));
}

将产生如下输出

        <http-request>
          <param1>value</param>
          <param2>value</param>
        </http-request>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多