正则表达式 %r{}操作符和.*? 表达式的区别
发布时间:2020-12-14 04:16:50 所属栏目:百科 来源:网络整理
导读:# .*? 和(.*?)表达的都是同一个意思,匹配任意字符,直到碰到第一个后面的表达式 #符号 %r{} 可以用来替代正则表达式的边界斜线/xxx/ #encoding = utf-8require 'open-uri'test_text = "title百度一下,你就知道/title"url = 'http://www.baidu.com/'page
# .*? 和(.*?)表达的都是同一个意思,匹配任意字符,直到碰到第一个后面的表达式 #符号 %r{} 可以用来替代正则表达式的边界斜线/xxx/
#encoding = utf-8
require 'open-uri'
test_text = "<title>百度一下,你就知道</title>"
url = 'http://www.baidu.com/'
page = open(url)
text = page.read
#puts text
puts text.match(/<html>/)
#符号 %{} 可以用来替代正则表达式的边界斜线/xxx/
def scrape_title(page)
page.match(%r{<title.*?>.*?</titles*>}m)
end
puts scrape_title(test_text)
# .*? 和(.*?)表达的都是同一个意思,匹配任意字符,直到碰到第一个后面的表达式
puts "==============="
puts test_text.match(/<title.*?>(.*?)</titles*>/)
puts "百度"
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |