2017-01-26 5 views
0

ネットワーキング要求の後、私のアプリケーションのJSONを取得して解析します。私がパースするテキストには、しばしば、私のラベルに改行や改行が生じるランダムなコードがいくつかあります。たとえば:私のUILabelで改行を引き起こすJSONの奇妙な文字

"...it turns\u{0C}aggressive..." 

私はこれの意味が何であるか疑問に思って、どのように私のテキスト内の任意の改行を避けるために、私は受け付けており、すべてのテキストからこれを削除することでした。私はこれをSwiftでコーディングしており、Stringクラスのドキュメントを読んだことがありますが、問題を特定する方法がわからないため、解決策を見つけるのが難しくなります。 \ u {0C}が何を表しているかわからないリテラル文字列内スウィフト

答えて

0

\u{n}は UnicodeコードポイントU+nn 1-8桁の16進数)のエスケープシーケンスです。

従って\u{0C}U+000Cであり、"form feed"である。これにより、望ましくない改行が発生します。

あなたは、単に通常の空白文字に置き換えることができます、また

let text = "...it turns\u{0C}aggressive..." 
let modified = text.replacingOccurrences(of: "\u{0C}", with: " ") 
print(modified) // ...it turns aggressive... 

通常の空白文字をすべて「空白」(改行、キャリッジリターン、フォームフィード、タブ)を置き換える:

let modified = text.replacingOccurrences(of: "\\s", with: " ", options: .regularExpression) 
+0

2番目のオプションについて詳しく説明できますか? \\ sとは何ですか?すべての空白を削除するターゲティングはどのようにして行われますか? –

+0

@EmanH: '\ s'は*正規表現パターン*であり、すべての空白文字と一致します。 –

関連する問題