问题标签 [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 投票
2 回答
187 浏览

ios - iOS NSDataDetector 将上午时间交换为下午时间(两者都应该是 24 小时)

我正在使用 NSDataDetector 读取 NSString 日期/时间并将其交换为 NSDate。

输入(lastRefreshStampString)是 2014-05-05 02:54:45 +0000 但是,一旦它被 NSDataDetector 处理,result.date 就变成 2014-05-05 14:54:45 +0000。出于某种原因,它将 02 视为 PM 并将其交换。

我该如何纠正这种行为?

0 投票
2 回答
1116 浏览

ios - 从没有 NSDataDetector 的 NSString 解析地址

我一直在使用NSDataDetector从字符串中解析地址,并且在大多数情况下它做得很好。但是,在与此类似的地址上,它不会检测到它。

6200 North Evan Blvd Suit 487 Highland UT 84043

目前我正在使用这段代码:

任何人都可以建议一种更强大的方法来解析字符串中的物理地址吗?我需要能够获得邮编、街道、州和城市。

0 投票
4 回答
2079 浏览

ios - 如何在 UITextView 中禁用放大

我想摆脱 UITextView 中的放大和文本选择,但我需要电话号码、链接和地址检测器。我在用

停止放大,但它也停止选择 textview 检测到的电话号码/地址/链接。如果我这样做[_txtView setSelectable:NO];,它会停止放大和文本选择以及数据检测。

0 投票
0 回答
199 浏览

ios - 检测 NSString 中电话会议电话号码的“访问代码”部分

给定一个代表 iOS 设备上的日历条目的 EKEvent,我不仅要检测电话号码,还要检测相关的电话会议访问代码。

例如,给定:

我想实现一个返回这个值的方法:

@"Access Code: "除了描述用于访问电话会议的号码之外,日历条目还可能使用各种文本。例如,其他字符串可能包括@"passcode: ",@"virtual room number: "等。

我知道NSDataDetector检测电话号码的能力,但是鉴于上面的示例字符串,它会返回@"555-123-4567 Access Code: 9876#"(请注意,这里的“访问代码”仍然是一个子字符串)。

我正在考虑仅获取从 NSDataDetector 返回的值并对@"Access Code: "可能出现在日历条目上的类似子字符串进行字符串替换,替换为@",,",但这似乎不够优雅。我更喜欢 NSDataDetector 为我做这件事。

这是我不太满意的代码:

问题:除了我上面提出的字符串替换解决方案之外,还有更好的方法吗?

0 投票
0 回答
126 浏览

ios - iOS NSDataDetectors vs NSRegularExpressions - 更好的方法?

URLs我有一个需要从给定中提取的场景NSStrings,所以我找到了两种方法来做到这一点(在 SO 的帮助下 :))......

这样我就有一个NSString这样的

然后我可以使用这两种方法来摆脱URL字符串...

第一种方式

第二种方式

我的问题是哪一个更好更快,因为我有大约400 到 500NSStrings个实例要解析。

先感谢您。

0 投票
2 回答
1269 浏览

swift - Swift:检查 UISearchBar.text 是否包含 url

如何检查 UISearchBar.text 是否包含 URL?我想过做这样的事情:

但我得到了错误:

0 投票
2 回答
262 浏览

ios - iOS - NSDataDetector:为什么 url 缺少 '.com' (http://google) 返回为有效 URL?

我正在尝试使用 NSDataDetector 从文本字段验证提供的 URL,如果我在任何文本的前面输入包含“http://”的 URL,它总是返回有效。

仅供参考- 尽管网络浏览器能够使用上述格式解释 url,但 NSURL 每次使用这种格式时都会返回错误。由于我需要在我的应用程序中使用提供的 URL 调用操作,因此在从提供的 URL 文本创建 NSURL 时它必须是有效的。

关于如何纠正这个问题的任何想法,因为这些网址并不真正有效?

这是我的代码:

0 投票
1 回答
273 浏览

objective-c - NSDataDetector 无法检测“2014-11-21T08:05:16+0400”中的日期和时间

(这适用于 OSX,尚未在 iOS 上测试过)

在您问“为什么采用这种愚蠢的日期格式”之前:我使用从 iPhone/iPad 上创建的文件中提取的元数据。照片和视频包含一个“creationDate”元数据标签,它以这种格式返回一个 NSString。现在,如果我输入这个字符串:

@“2014-11-21T08:05:16+0400”

通过以下方式进入 NSDateDetector :

我收到一个完全虚假的价值:

“2014-12-12 14:16:00 CET”

  • 日期“2014-12-12”是今天的日期,而不是应该的 2014-11-21
  • “欧洲中部时间 14:16:00”的时间已经完成,甚至代码运行的时间都没有

所以我们在这里至少有两种可能性 - 基本上 NSDateDetector 无法处理 Apple 在 iPhone 上编码日期的标准格式,或者我在我的代码中犯了一个我找不到的明显错误。如果第二个是真的,我会很高兴,所以你能告诉我我做错了什么吗?

哦,我在 Mavericks / XCode 5 上运行它。有人吗?请?-ch

0 投票
2 回答
300 浏览

swift - NSDataDetector 找不到 .io 网站

它不是那么重要,但是如果我像这里一样使用 NSDataDetector并将其用于网络链接,我可以显示所有带有 .com、.us 甚至 .ca 的网站,但不适用于 .io 如果我使用http://website.io它是工作,但如果文本是 website.io 它不工作。

有人有办法让它工作吗?

如果您需要,可以在 Playground 中使用示例代码:

输出是 website.com {25,11}

缺少 website.io {0, 10}

编辑:

它不是用维基英语写的,而是用我的语言写的,有一些“自满”域,如 .ad .am .cd .co .io .me .mu .nu .tv .je .sr

我只是尝试,只有 .me 有效。对于这个“静止”的顶级域,这是 Apple 的限制吗?

0 投票
8 回答
1909 浏览

ios - 是否可以使用 NSDataDetector 检测 NSString 中包含空格的链接?

首先,我无法控制收到的文本。只是想把它放在那里,这样你就知道我不能更改链接。

我试图在使用中查找链接的文本NSDataDetector包含以下内容:

我正在使用的检测代码是这样的,但它不会找到这个链接:

这是Apple的链接检测的错误,它无法检测到带有空格的链接,还是我做错了什么?

有没有人有更可靠的方法来检测链接,无论它们是否有空格或特殊字符或其中的任何内容?