gpt4 book ai didi

ios - StringBetweenString 函数

转载 作者:搜寻专家 更新时间:2023-10-31 08:10:27 24 4
gpt4 key购买 nike

我需要从我的文本中获取两个字符串之间的子字符串。例如,我有文本“http://google.com”,我想获取“://”和“.”之间的子字符串。

我不知道,我该怎么做。

我尝试使用正则表达式,但我认为这是一种糟糕的方式。

最佳答案

几个选项:

  1. 正则表达式效果很好。请参阅 ICU 用户指南:Regular Expressions

    例子:

    let us = "http://google.com"
    let range = us.rangeOfString("(?<=://)[^.]+(?=.)", options:.RegularExpressionSearch)
    if range != nil {
    let found = us.substringWithRange(range!)
    println("found: \(found)") // found: google
    }

    注意事项:

        (?<=://) means preceded by ://  
    [^.]+ means any characters except .
    (?=.) means followed by .
  2. NSScanner 也是一个不错的方法。参见 Apple 的 NSScanner Class Reference

    例子:

    let us = "http://google.com"
    let scanner = NSScanner(string:us)
    var scanned: NSString?

    if scanner.scanUpToString("://", intoString:nil) {
    scanner.scanString("://", intoString:nil)
    if scanner.scanUpToString(".", intoString:&scanned) {
    let result: String = scanned as String
    println("result: \(result)") // result: google
    }
    }

关于ios - StringBetweenString 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25217875/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com