問題タブ [nsdatadetector]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
217 参照

cocoa - NSDataDetector: 何を解析しますか?

NSDataDetector が解析できる式の範囲は文書化されていますか?

NSDataDetector は、「月曜日の夕方」など、多くの表現を解釈できることがわかっています。また、 NSDataDetector クラス リファレンスがこれらの詳細をカバーしたくないことは理解できます。これは、ドキュメントの頻繁な改訂が必要になる可能性があるためです。

それでも、特にクラスを拡張することを視野に入れて、認識されているものと認識されていないものを知っておくとよいでしょう。


( NSDataDetector が Cocoa の言語分析 API に依存していると考えるNSHipsterは間違っているのではないかと思います。もしそうなら、NSDataDetector は NSRegularExpression のサブクラスになるでしょうか? NSRegularExpression から継承するのは奇妙に思えますし、コードの臭いかもしれません。)

0 投票する
2 に答える
411 参照

ios - iOS 7 UITextViewは単語または画像を選択します

属性付きテキストを使用して iOS 7 に UITextView があります。UITextView に入れる前に解析される生のテキストは、次のようになります。

「私の例 @(John Doe)(johndoeid) @(Jane Doe)(janedoeid) へようこそ」

このテキストを解析して UITextView に入れると、次のようになります。

"私の例へようこそJohn Doe Jane Doe "

私の質問はこれです。

テキストビューで John Doe または Jane Doe をクリックすると、ユーザー「johndoe」または「janedoe」の ID を取得して、それに対してアクションを実行するにはどうすればよいですか? 元の場所と新しい場所を離れて保管し、それを使用することを考えていましたが、それはぎこちないようです。

0 投票する
1 に答える
2785 参照

objective-c - 「電話番号」テキストを検出する NSDataDetector

この問題を説明する最も簡単な方法は、コード サンプルとその出力を使用することですが、本質的NSDataDetectorには、「電話番号」という単語を含む文字列内で電話番号を検出することです。

出力:

ドキュメントを読み、SO を検索しましたが、これが意図した動作であるかどうか、またそうであればその理由を示すものは見つかりません。

これは、7.0 シミュレーターと 7.0.4 を実行している iPhone 5s で発生します。

誰かがこの問題に光を当てることができれば、私はそれを大いに感謝します.

更新:NSTextCheckingResult phoneNumber明確にするために、プロパティ にアクセスするときに「電話番号」というテキストを結果の一部にしたくありません。

0 投票する
2 に答える
2646 参照

ios - NSDataDetector による NSDate 検出

UNKNOWN形式のNSStringからNSDateを取得しようとしたので、以下のような関数を書きました

一か所を除いてはうまくいきます。

私が呼び出す場合

印刷します

日付 : 2014 年6 月 12 日木曜日、午後 12:00:00 オーストラリア東部標準時

同時に電話したら

それは印刷します

日付 : 2013 年12 月 13 日金曜日、午後 12:00:00 オーストラリア東部夏時間

基本的に、私は関数が一貫して動作することを望んでいます。私はオーストラリアに住んでいるので、最初の実行は 12 月 6 日に返されたはずです。2 回目の呼び出し結果は正しいです。

ここで何が間違っていますか?

0 投票する
2 に答える
1197 参照

ios - 文字列内の名前を検出する NSDataDetector

NSDataDetectorしばらくの間、クラスを理解するのに苦労しています。私はドキュメントを読みましたが、それを理解することはできません。私が行うすべてのことは、Xcode がエラーがあることを教えてくれます。

この試みで正しい道を進んでいるような気がします。文字列内の名前を見つけるための簡単な基盤プログラムを作成するにはどうすればよいですか?

0 投票する
2 に答える
190 参照

objective-c - NSDataDetector と 1900 年より前の日付が間違った日付を返す

この質問を Apple Dev フォーラムhttps://devforums.apple.com/message/956514に投稿しました。こちらにも投稿してよろしいでしょうか。Apple dev フォーラムにはまだ応答がありません。

1900 年より前の日付を入力すると、NSDataDetector は間違った日付に一致します。

例えば:

Jan 1, 1201 は 2015 年 1 月 1 日に一致し、Feb 1, 1201 は 2014 年 2 月 1 日に一致します

1900 年より前の 1 月の日付は 1 月の日付で返されるようですが、2015 年です。1 月より後の日付でも、1900 年より前の日付は 2014 年のその日付に一致します。

日付を検出するための私のコードは次のとおりです。

myDateString は、解析する必要がある日付値を含む単なる文字列です。

何か間違ったことをしていますか、それとも NSDataDetector の既知の問題ですか?