使用正则表达式

时间:2016-02-02 11:35:35

标签: ios regex swift

我有一个场景,我想在每个选定的字符串

之后提取括号内的字符串
  1. PS = AV_2
  2. PS = AV_2(AA)
  3. PS = AV_2(AA),PS = AV_20(BB,ZZ)
  4. PS = AV_2,PS = AV_20
  5. PS = AV_2(ZZ),PS = AV_20
  6. 例如。输入将为PS=AV_2(AA),PS=AV_20(BB,ZZ)selectedQues = AV_20 or AV_2 在上面只有常量部分是"PS=",所有其他字符串可以是任何格式。

    该函数应该返回括号中的字符串。

    func getStringList(input: String, selectedQues: String ) -> [String] {
    
           // let pattern = "/\\((.*)\\)/"  //1. "/\(([^)]+)\)/"   //2. "/\\(([^)]+)\\)/)"  //3. "([\\w]+(?:,[\\w]+))" some tried regular expression
            let pattern = "/\(selectedQues)\\(([^)]+)\\)/g"
            let nsString = input as NSString
            let regExp = try! NSRegularExpression(pattern: pattern, options: .CaseInsensitive)
            let results = regExp.matchesInString(input, options: [], range:NSMakeRange(0, nsString.length))
    
            return results.map { nsString.substringWithRange($0.range)}
    }
    

    我无法解析相同的正则表达式。如果有人可以提供帮助或指出一些帮助,我将非常感激。

0 个答案:

没有答案