gpt4 book ai didi

ruby - 如何在引号之间找到特定文本

转载 作者:太空宇宙 更新时间:2023-11-03 18:21:42 25 4
gpt4 key购买 nike

我正在尝试编写一个 Ruby 脚本,它将从图像中获取 Flickr BBCode,并且只找到实际的图像链接并忽略所有其他内容。

来自 Flickr 的 BBCode 看起来像这样:

<a href="http://www.flickr.com/photos/user/9049969465/" title="Wiggle Wiggle by Anonymous, on Flickr"><img src="https://farm3.staticflickr.com/2864/92917419471_248187_c.jpg" width="800" height="526" alt="Wiggle Wiggle"></a>

我试图让我的输出只是链接,所以:https://farm3.staticflickr.com/2864/92917419471_248187_c.jpg

到目前为止,我的代码是这样的

#!/usr/bin/ruby

require 'rubygems'

str1 = ""

puts "What text would you like me to use? "
text = gets

text.scan(/"([^"]*)"/) { str1 = $1}

puts str1

我需要知道如何扫描输入并仅找到以 https 开头并以引号结尾的部分。感谢任何帮助

最佳答案

不要尝试 parse HTML with a regex .

相反,请使用 HTML 解析器。像 Nokogiri 这样的东西 http://nokogiri.org/

require 'nokogiri'
doc = Nokogiri::HTML.parse '<a href="http://www.flickr.com/photos/user/9049969465/" title="Wiggle Wiggle by Anonymous, on Flickr"><img src="https://farm3.staticflickr.com/2864/92917419471_248187_c.jpg" width="800" height="526" alt="Wiggle Wiggle"></a>'

doc.css('a').each do |link|
puts link.attr(:href)
end

关于ruby - 如何在引号之间找到特定文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17199839/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com