質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

データマイニング

データマイニングは、購買履歴やクレジットカードの利用履歴、電話の通話履歴など企業にある大量のデータを解析して、その中に隠れたパターンやルールを探し出す技術です。DMと略されることもあります。

Q&A

解決済

1回答

1979閲覧

swiftで形態素解析

nilfs

総合スコア23

Swift

Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

データマイニング

データマイニングは、購買履歴やクレジットカードの利用履歴、電話の通話履歴など企業にある大量のデータを解析して、その中に隠れたパターンやルールを探し出す技術です。DMと略されることもあります。

0グッド

0クリップ

投稿2016/10/25 11:55

私は、swift3.0で文章を形態素解析してそれぞれの品詞ごとに文字を色分けして表示しようとしています。

現在は以下のコードにより形態素解析は行えています。

swift

1func tag(text: String, scheme: String) -> [TaggedToken] { 2 let options: NSLinguisticTagger.Options = [.omitWhitespace, .omitPunctuation, .joinNames] 3 let tagger = NSLinguisticTagger(tagSchemes: NSLinguisticTagger.availableTagSchemes(forLanguage: "en"), 4 options: Int(options.rawValue)) 5 tagger.string = text 6 7 var tokens: [TaggedToken] = [] 8 9 // Using NSLinguisticTagger 10 tagger.enumerateTags(in: NSMakeRange(0, text.characters.count), scheme:scheme, options: options) { 11 tag, tokenRange, _, _ in 12 let token = (text as NSString).substring(with: tokenRange) 13 tokens.append((token, tag)) 14 print("\(tag): \(token)") 15 } 16 17 return tokens 18} 19 20func partOfSpeech(text: String) -> [TaggedToken] { 21 return tag(text: text, scheme: NSLinguisticTagSchemeLexicalClass) 22} 23 24override func viewDidLoad() { 25 super.viewDidLoad() 26 // Do any additional setup after loading the view, typically from a nib. 27 print(partOfSpeech(text:"I went to the store")) 28} 29 30

色に関しては以下のコードを参考に

swift

1 func colorForAtteributeForLinguisticTag(linguisticTag:String)->UIColor { 2 // 名詞 3 if linguisticTag == String(NSLinguisticTagNoun) { 4 5 return UIColor(red:255,green:0,blue:0,alpha:1) 6 }// 動詞 7 else if linguisticTag == String(NSLinguisticTagVerb) { 8 9 return UIColor(red:0,green:0,blue:255,alpha:1) 10 } 11 else if linguisticTag == String(NSLinguisticTagAdjective) { 12 13 return UIColor(red:0,green:0,blue:255,alpha:1) 14 } 15 else if linguisticTag == String(NSLinguisticTagPronoun) { 16 17 return UIColor(red:255,green:255,blue:0,alpha:1) 18 } 19 20 return UIColor(red:0,green:255,blue:255,alpha:1) 21 } 22

しかし、現在はコンソールで分けられたデータが表示されるだけで、UITextViewに色分けして表示することができません。
解決策を教えてください。お願いします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

AttributedStringを使うのが良いと思います。

投稿2016/10/26 01:22

fuzzball

総合スコア16731

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問