我怎么能在多行分割字符串,如下面?

var text:String = "This is some text
                   over multiple lines"

当前回答

Swift 4通过提供多行字符串文字支持解决了这个问题。要开始字符串字面量,添加三个双引号(" " " ")并按回车键,按回车键后开始写带有任何变量的字符串,换行符和双引号,就像你在记事本或任何文本编辑器中写的那样。要结束多行字符串文字再次写入(" " ")在新行。

参见下面的例子

     let multiLineStringLiteral = """
    This is one of the best feature add in Swift 4
    It let’s you write “Double Quotes” without any escaping
    and new lines without need of “\n”
    """

print(multiLineStringLiteral)

其他回答

样本

var yourString = "first line \n second line \n third line"

以防您发现+运算符不合适

正如litso所指出的,在一个表达式中重复使用+-操作符会导致Xcode Beta挂起(刚刚用Xcode 6 Beta 5检查过):Xcode 6 Beta无法编译

目前,多行字符串的另一种替代方法是使用一个字符串数组,并将其压缩为+:

var text = ["This is some text ",
            "over multiple lines"].reduce("", +)

或者,可以更简单地使用join:

var text = "".join(["This is some text ",
                    "over multiple lines"])

一种方法是将标签文本设置为attributedText,并更新字符串变量以包含换行符的HTML (<br />)。

例如:

var text:String = "This is some text<br />over multiple lines"
label.attributedText = text

输出:

This is some text
over multiple lines

希望这能有所帮助!

我尝试了几种方法,但找到了一个更好的解决方案: 只需使用“文本视图”元素。它的文本自动显示多行! 找到这里:UITextField多行

Swift 4通过提供多行字符串文字支持解决了这个问题。要开始字符串字面量,添加三个双引号(" " " ")并按回车键,按回车键后开始写带有任何变量的字符串,换行符和双引号,就像你在记事本或任何文本编辑器中写的那样。要结束多行字符串文字再次写入(" " ")在新行。

参见下面的例子

     let multiLineStringLiteral = """
    This is one of the best feature add in Swift 4
    It let’s you write “Double Quotes” without any escaping
    and new lines without need of “\n”
    """

print(multiLineStringLiteral)