【发布时间】:2014-05-31 05:53:40
【问题描述】:
我正在尝试使用正则表达式将 soundcloud 解析为从链接中提取的嵌入代码
到目前为止,如果我输入此网址:https://soundcloud.com/theredrojomusic/animal,它首先转换为链接,然后更改为嵌入代码(采用 vimeo/youtube/metacafe 正则表达式):
array(
'https{0,1}:\/\/w{0,3}\.*soundcloud\.com\/([A-Za-z0-9_-]+)\/([A-Za-z0-9_-]+)[^< ]*',
'<iframe width="100%" height="'.$s.'" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=http://soundcloud.com/$1/$2&auto_play=false&hide_related=true&show_comments=false&show_user=true&show_reposts=false&visual=false"></iframe>')
问题是当我尝试解析如下集合时:https://soundcloud.com/theredrojomusic/sets/tristezza
这只是将 url 呈现为 https://soundcloud.com/theredrojomusic/sets 并且嵌入代码无法处理。
我试过了:
array(
'https{0,1}:\/\/w{0,3}\.*soundcloud\.com\/([A-Za-z0-9_-])\/sets\/*([A-Za-z0-9_-]+)[^< ]*',
'<iframe width="100%" height="'.$s.'" scrolling="no" frameborder="no" src="https://w.soundcloud.com/player/?url=http://soundcloud.com/$1/sets/$2&auto_play=false&hide_related=true&show_comments=false&show_user=true&show_reposts=false&visual=false"></iframe>'),
但是渲染出来的url是https://soundcloud.com/c/sets/tristezza
我想要两个正则表达式,一个用于非/sets/ url,另一个用于/sets/,因为嵌入代码有点不同(至少如果我希望/sets/ 看起来像一个列表而不是列表只是一首歌。)
我真的很不擅长正则表达式...有人能指出我正确的方向吗?
谢谢
【问题讨论】: