Swift UILebelの指定複数箇所に色を付ける その1:HTML色指定を差し込む
実現したい事
その1:HTML色指定を差し込む
文字列:「1:00 Paris Saint-Germain – FC Nantes」
色指定差し込み後文字列:「1:00 Paris Saint-Germain – FC Nantes」
正規表現を使用して差し込む。
NSRegularExpressionを使用する。
ドキュメント:https://developer.apple.com/documentation/foundation/nsregularexpression
appendTextに文字列が格納されている前提。
do { let regex = try NSRegularExpression(pattern: "^([0-9]?[0-9]:[0-9][0-9])( .*)") appendText = regex.stringByReplacingMatches(in: appendText, options: [], range: NSRange(location: 0, length: appendText.count), withTemplate: "<font color=\"#008F00\">$1</font>$2") print("regex.stringByReplacingMatches:\(appendText)") } catch { print(error) }
replaceMatches(in:options:range:withTemplate:)
in:文字列「1:00 Paris Saint-Germain – FC Nantes」
options:マッチングオプション、今回は使用しない
range:正規表現マッチング範囲、今回は文字列全範囲
withTemplate:置き換えテンプレート、$1と$2は正規表現のグループ、時間がグループ1、その他文字列がグループ2