字符串包含\ n

时间:2017-05-19 05:37:42

标签: regex swift

我试图使用正则表达式获取title的值。这个正则表达式有什么问题。比赛即将来临。

 let strToCheck = "<title>youtube \n </title>"
 let rgx = "<title(.*?)>(.*?)</title>"

 let rx = try NSRegularExpression(pattern: rgx, options: [.caseInsensitive])

 if let match = rx.firstMatch(in: strToCheck, options: [], range: 
            NSMakeRange(0, string.characters.count)) {

  }

1 个答案:

答案 0 :(得分:5)

最初的问题是因为你没有逃脱/,这会使你的正则表达式中断。您需要在斜杠之前添加\,如下所示:

<title(.*?)>(.*?)<\/title>

Demo url

正如Wiktor Stribiżew在下面的评论中解释的那样,Swift不需要逃避斜线我更新了正则表达式以匹配新的行情况如下:

<title(.*?)>(?s).*?</title>

Demo URL

注意:在演示中,/有一个转义字符,但Swift不需要它