首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何省略正则表达式模式过滤器字符?

如何省略正则表达式模式过滤器字符?
EN

Stack Overflow用户
提问于 2016-06-03 22:13:12
回答 2查看 69关注 0票数 0

我在Swift 3中使用了这样的regEx方式

代码语言:javascript
复制
let reg = try NSRegularExpression(pattern: pattern, options: .CaseInsensitive)
let matches = reg.matchesInString(text, options: NSMatchingOptions.WithTransparentBounds, range: NSMakeRange(0, text.characters.count))

然后我使用"<hh>(.*?)</hh>“这样的模式,然后我得到了匹配结果,它的开始部分包含"<hh>”,结束部分包含"</hh>“。如何在它们之间只获得价值?

EN

回答 2

Stack Overflow用户

发布于 2016-06-03 22:22:48

我现在不能测试它,但可以尝试一些类似的东西:

代码语言:javascript
复制
for match in matches {
    let matchRange = match.rangeAtIndex(1)
    let substring = text.substringWithRange(matchRange)
    //do something with your subscring
}
票数 0
EN

Stack Overflow用户

发布于 2016-06-03 22:34:39

解决方法是:在用于查找正则表达式匹配的函数中添加一个removingTagLength参数,并在调用substringWithRange时在range中使用此参数

代码语言:javascript
复制
nsText.substringWithRange(NSMakeRange(match.range.location + removingTagLength, match.range.length - (removingTagLength > 0 ? removingTagLength + 1 : 0)))
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37616683

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档