我的Swift应用程序中有一个UITextView
,用户可以在其中输入文本。他们可以输入任意多个换行符,但是我需要使用换行命令(\n
)保存字符串。我该怎么办?
例如,我的用户输入
Line 1
Line 2
Line 3
UITextView
中的。如果我要检索字符串...
let string = textview.text!
这将返回
"Line 1
Line 2
Line 3"
我希望它返回时
"Line1\nLine2\nLine3"
我将如何去做?我可以使用replacingOccurrences(of:with:)
的形式吗?我觉得我想念一个相当明显的解决方案...
答案 0 :(得分:0)
您是否尝试过将\ r替换为\ n?甚至\ r \ n与\ n?
我希望我不会做出您考虑的明显假设,但这也许会派上用场: Is a new line = \n OR \r\n?
答案 1 :(得分:0)
尤里卡!经过WAY的过多研究和对String
逃逸的了解之后,我发现了一个非常简单的解决方案。我很惊讶这还不是答案(据我所知哈哈),所以希望这对某人有帮助!
这实际上非常简单,并且可以在您可能使用的任何String
中使用。
textView.text!.replacingOccurrences(of: "\n", with: "\\n")
说明:
好的,您可以说,这很简单。我们要用字符串\n
替换换行命令"\n"
。问题在于,如果我们将\n
替换为\n
,它将仅转移到换行符,而不是字符串。这就是逃逸如此重要的原因。如您所见,我将\n
替换为\\n
。通过添加额外的\
,我们完全转义了命令\n
,将其转换为字符串。
我希望这对某人有帮助!祝你有美好的一天!