regex - 如果字符串包含正则表达式问题\n

标签 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)) {

  }

最佳答案

最初的问题是因为你没有转义 / 这让你的正则表达式中断。您需要在斜杠前添加 \ 如下:

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

Demo url

作为Wiktor Stribiżew在他下面的评论中解释说,Swift 不需要转义斜杠我已经更新了正则表达式以匹配新的行大小写,如下所示:

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

Demo URL

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

关于regex - 如果字符串包含正则表达式问题\n,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44062185/

相关文章:

python - 如何添加到每行末尾附近的数字

javascript - 如何使用 javascript 匹配和删除空白 html 标记?

ios - 这可以从我的 WebView 中删除广告吗?

swift - NSTableView 在初始加载时未更新

ios - 自定义 UIViewController 过渡动画适用于演示,但不适用于解雇

regex - 使用用户指定的替换字符串进行 sed 替换

javascript - RegExp.exec() 偶尔返回 NULL

python - 在 Python 中使用 re.findall() 返回所有重叠模式?

swift - “ fatal error :在展开可选值时意外发现nil”是什么意思?

swift - UIScrollView Controller 没有完全滚动