String.StripIndent 方法

定义

返回一个字符串,其值为此字符串,附带的 Character#isWhitespace(int) 空格从每行的开头和结尾删除。

[Android.Runtime.Register("stripIndent", "()Ljava/lang/String;", "", ApiSince=34)]
public string StripIndent();
[<Android.Runtime.Register("stripIndent", "()Ljava/lang/String;", "", ApiSince=34)>]
member this.StripIndent : unit -> string

返回

删除了附带缩进的字符串,并规范化了行终止符

属性

注解

返回一个字符串,其值为此字符串,附带的 Character#isWhitespace(int) 空格从每行的开头和结尾删除。

附带字符#isWhitespace(int) 空格通常存在于文本块中,以将内容与打开分隔符对齐。 例如,在以下代码中,点表示附带的 Character#isWhitespace(int) 空格: <blockquote>

String html = """
            ..............&lt;html&gt;
            ..............    &lt;body&gt;
            ..............        &lt;p&gt;Hello, world&lt;/p&gt;
            ..............    &lt;/body&gt;
            ..............&lt;/html&gt;
            ..............""";

</blockquote> 此方法将附带的 Character#isWhitespace(int) 空格视为要剥离的缩进,生成保留内容的相对缩进的字符串。 使用 |用于可视化字符串每行的开头: <blockquote>

|&lt;html&gt;
            |    &lt;body&gt;
            |        &lt;p&gt;Hello, world&lt;/p&gt;
            |    &lt;/body&gt;
            |&lt;/html&gt;

</blockquote> First,提取此字符串的各个行。 是零个或多个字符的序列,后跟行终止符或字符串的末尾。 如果字符串至少有一行终止符,则最后一行由最后一个终止符和字符串末尾之间的字符组成。 否则,如果字符串没有终止符,则最后一行是字符串末尾的开头,换句话说,是整个字符串的开头。 行不包括行终止符。

然后, 最小缩进 (min)按如下方式确定: <ul><li>

对于每个非空白行(由 String#isBlank()定义),将计算前导 Character#isWhitespace(int) 空格字符。

</li li><>

即使 String#isBlank() 空,最后一行中的前导 Character#isWhitespace(int) 空格字符也会计数。

</li></ul>

最小值是这些计数中的最小值。

对于每个 String#isBlank() 非空白行, 将删除最小 前导字符#isWhitespace(int) 空格字符,并删除任何尾随的 Character#isWhitespace(int) 空格字符。 String#isBlank() 空白行替换为空字符串。

最后,使用 LF 字符 "\n" (U+000A) 将行联接到新字符串中,以分隔行。

已在 15 中添加。

Java文档java.lang.String.stripIndent()

本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。

适用于