javascript正则表达式url替换
javascript regex url replacement
我需要使用javascript将&wmode=transparent
附加到我博客上的所有youtube iframe嵌入中。
所以。。。
<iframe src="http://www.youtube.com/embed/7jW_0IQWOQg?rel=0"></frame>
需要更改为:
<iframe src="http://www.youtube.com/embed/7jW_0IQWOQg?rel=0&wmode=transparent"></frame>
所以我想我需要匹配一个youtube嵌入url,然后将其附加到url的末尾。。。如何匹配url的末尾?
编辑:
我使用的是nodejs,所以没有DOM。
我试着查看博客中一篇文章的全部内容。因此,该字符串将包含文本/图像html,并可能包含多个youtube嵌入。
这样的东西怎么样:
var iframes = document.getElementsByTagName("iframe"),
i,
len,
src;
for (i = 0, len = iframes.length; i < len; i++) {
src = iframes[i].src;
if (src.indexOf("http://www.youtube.com/embed") > -1) {
iframes[i].src = src + "&wmode=transparent";
}
}
如果您无法访问DOM(即,您正在搜索String
),则可以使用以下内容:
str = str.replace(/http:'/'/www.youtube.com'/embed'/(.*?)"><'/iframe>/g, function (a, b) {
return ['http://www.youtube.com/embed/', b, '&wmode=transparent"></iframe>'].join("");
});
下面是一个工作示例。
在Github上签出uri.js项目:https://github.com/medialize/URI.js和http://medialize.github.com/URI.js/和http://medialize.github.com/URI.js/docs.html#accessors-搜索
好吧,要检查它是否是YouTube URL,你可以简单地检查其中是否有"YouTube"。如果有,你可以附加你的参数。不确定您所说的"字符串中可能有多个URL"是什么意思。但是,可能还没有任何参数,因此需要使用?
而不是&
。在这种情况下,只需使用indexOf
来检查您应该使用什么。
var iframes = document.getElementsByTagName("iframe");
for(var i = 0; i < iframes ; i++) {
var iframe = iframes [i];
if (iframe.src.indexOf("youtube") >= 0)
iframe.src += "&wmode=transparent";
}
相关文章:
- 替换url中变量的值
- hashbang之后的角度替换url
- 为出版商学术界登录替换url中的域
- 重定向javascript,替换url
- javascript替换url链接循环
- 如何替换URL的一段并重新加载页面
- 单击时尝试替换URL中的值
- 替换 URL 字符串中的撇号时出现问题
- 在 javascript 中替换 URL 中的两个元素
- 使用 jQuery 替换 URL 中的值
- 为什么添加而不是替换 URL 哈希
- 使用 regEx 替换 url 之间的值
- JQuery 根据 HTML 下拉列表选择查找并替换 URL 中的查询字符串
- 替换URL'中的字符串查询;s与Javascript(有条件)
- 替换URL字符串中的括号
- Regex-用图像标记替换URL
- 用Javascript Regex替换url中的子目录
- JavaScript字符串替换URL参数
- 使用正则表达式替换url中的字符串
- 如何替换URL字符串中的字符