当前位置: 首页 > 面试题库 >

确定字符串是否包含Swift中的字符集的最佳方法是什么

郭永怡
2023-03-14
问题内容

我需要确定一个字符串是否包含我定义的自定义集中的任何字符。

您可以使用rangeOfString确定一个字符串是否包含另一个字符串。如果您一次测试一个字符,那么这当然也适用于字符。

我想知道什么是最好的方法。


问题答案:

您可以创建一个CharacterSet包含自定义字符集的,然后针对此字符集测试成员资格:

斯威夫特3:

let charset = CharacterSet(charactersIn: "aw")
if str.rangeOfCharacter(from: charset) != nil {
    print("yes")
}

对于不区分大小写的比较,请使用

if str.lowercased().rangeOfCharacter(from: charset) != nil {
    print("yes")
}

(假设字符集仅包含小写字母)。

斯威夫特2:

let charset = NSCharacterSet(charactersInString: "aw")
if str.rangeOfCharacterFromSet(charset) != nil {
    print("yes")
}

斯威夫特1.2

let charset = NSCharacterSet(charactersInString: "aw")
if str.rangeOfCharacterFromSet(charset, options: nil, range: nil) != nil {
    println("yes")
}


 类似资料:
  • 问题内容: 在Java / Android中检查字符串是否包含URL的最佳方法是什么?最好的方法是检查字符串是否包含| .com |。.net | .org | .info | .everythingelse |?还是有更好的方法呢? 该网址是在Android中输入到EditText中的,它可以是粘贴的网址,也可以是手动输入的网址,用户不希望输入http://…。我正在开发一个网址缩短应用程序。

  • 问题内容: 我需要能够使用Java中的字符串,并确定其中包含的所有字符是否都在指定的字符集中(例如ISO-8859-1)。我已经到处寻找了一种简单的方法(包括使用来玩),但是还没有找到任何东西。 取得字符串并确定所有字符是否都在给定字符集中的最佳方法是什么? 问题答案: 类CharsetEncoder在包java.nio.charset中提供的方法canEncode是否支持一个特定的字符来测试。

  • 问题内容: 我需要一个可以告诉我字符串是否包含非字母数字字符的方法。 例如,如果字符串为“ abcdef?” 或“abcdefà”,该方法必须返回true。 问题答案: 使用Apache Commons Lang: 另一种方法是遍历String的字符并检查: 您还剩下一个问题:示例字符串“abcdefà”是字母数字,因为是字母。但我认为您希望将其视为非字母数字,对吗? 因此,您可能想使用正则表达式

  • 问题内容: 使用场景 我们已经实现了一个Web服务,我们的Web前端开发人员在内部使用了该服务(通过php API)来显示产品数据。用户在网站上输入内容(即查询字符串)。在内部,网站通过api调用服务。 注意:我们使用restlet,而不是tomcat 原始问题 Firefox 3.0.10似乎尊重浏览器中选择的编码,并根据选择的编码对URL进行编码。这确实会导致ISO-8859-1和UTF-8的

  • 问题内容: 我在寻找Python中的方法。 我想要做: 问题答案: 你可以使用in运算符:

  • 问题内容: 我必须检测一个字符串是否包含任何特殊字符。我该如何检查?Swift支持正则表达式吗? 我尝试了上面的代码,但是只有当我输入第一个字符作为特殊字符时,它才匹配。 问题答案: 您的代码检查字符串中是否没有字符来自给定的集合。您要检查的是给定集合中是否 没有 任何 字符: __ 您还可以使用正则表达式实现此目的: 该模式匹配的字符 不在 AZ,az或0-9范围内。 Swift 2更新: Sw