ruby 拼音子字符串反斜杠加“

w8ntj3qf  于 2023-02-08  发布在  Ruby
关注(0)|答案(1)|浏览(159)

我有一个这样的字符串

str1 = "blablablabla... original_url=\"https://facebook.com/125642\"> ... blablablabla..."

什么是提取这个original_url的最佳方法?
到目前为止我所做的是这样的:

original_url = str1['content'][str1['content'].index('original_url')+12..str1['content'].index('>')-2]

它可以工作,但看起来像是一个糟糕的解决方案,主要是我在费力地寻找这个子字符串/">
以下是我迄今为止尝试的方法

str1.index('\">')
str1.index('\\">') # escaping only one backslach
str1.index('\\\">') # escaping both back slash and "
str1.index("\\\">") # was just without idea over here

我不是一个Ruby程序员,所以我有点迷失在这里

wwwo4jvm

wwwo4jvm1#

解析XML名称空间的最佳方法是使用@spickermann建议的Nokogiri。
快速但不优雅甚至不高效的解决方案:

str1 = "blablablabla... original_url=\"https://facebook.com/125642\"> ... blablablabla..."

original_url=str1[str1.index("original_url")+14...str1.index("\">")] 
# => "https://facebook.com/125642" 

original_url=str1.split(/original_url=\"/)[1].split(/">/).first
# => "https://facebook.com/125642"

相关问题