我有两个正则表达式,它们查找一个 url 并确定该 URL 是否是一个 silverlight 视频 url
URL 在 .isma、.ismv、.isml 的任何地方都应该至少有一个
正则表达式:.ism(a|v|l)
和
URL 应包含字符串“/QualityLevels({bitrate})/Fragments(audio={start-time})”
正则表达式:/QualityLevels(\d+)/Fragments(\b(audio|video|text)\b=\d+)
如何将这两个字符串合二为一并确保两个条件都满足?
is_silverlight_livestream_url(const char *url)
{
/* expecting something that ends with
* "xxx.isml/QualityLevels(<bitrate>)/Fragments(<type>=<timecode>)"
* on-demand streams have the extension ".ism" instead of ".isml"
*/
static boost::regex regex(my_regex_str);
try {
if (boost::regex_match(url, regex) == true) {
return true;
}
} catch (std::runtime_error e) {
}
return false;
}
桑托什