Javascript将字符串中的part替换为part的part
Javascript replace part with part of part in string?
我有一个类似的字符串
http://string.com/__11_22__/stuff
我需要把这个字符串替换成它的一部分,这样我就得到了
http://string.com/11/stuff
或
http://string.com/22/stuff
取决于if语句(是国家等等)。所以,如果国家是废话,我会得到...11/...
如果国家是胡说八道,我会收到...22/...
但我有点困惑于如何做到这一点,格式总是一样的,两个_
,然后两个数字,然后一个_
,再加两个数字然后再加2个_
您可以这样做:
var url = 'http://string.com/__11_22__/stuff';
url = url.replace({
blah: /__('d+)_'d+__/,
blah2: /__'d+_('d+)__/
}[country], '$1');
或者更传统的东西:
var url = 'http://string.com/__11_22__/stuff';
switch (country) {
case 'blah': url = url.replace(/__('d+)_'d+__/, '$1'); break;
case 'blah2': url = url.replace(/__'d+_('d+)__/, '$1'); break;
}
var s = 'http://string.com/__11_22__/stuff',
replace = /__('d'd)_('d'd)__/;
s = s.replace(replace, function(match, part1, part2) {
if (country == 'blah') {
return part1;
}
else {
return part2;
}
});
您可以执行以下操作:
var isCountry =true;
var str = 'http://string.com/__11_22__/stuff';
str = str.replace(/__('d{2})_('d{2})__/, isCountry ? '$1' : '$2');
console.log(str); // 'http://string.com/11/stuff'
Dovar start = indexOf("__");
之后,您可以对第一个执行var str.substring(start+2,start+4);
,对第二个进行str.substring(start+5,start+7);
相关文章:
- 无法从 jQuery RSS Feed 中的 localStorage 动态替换类
- 我如何找到一个句子中的所有空格并替换忽略它们
- 如何用更合适的内容替换document.write
- 是否有任何方法可以使用jQuery替换在数组中定义值的文本
- 在DOM中查找一个模式并替换它's的内容使用jquery
- 用空格替换下划线PHP
- str.split(someString).join(someOtherString)是否等效于替换
- 使用javascript的图像替换循环
- window.location替换并传递URL历史记录条目中的变量
- 替换标记中的属性
- 指令的模板必须只有一个根元素:With restrict E&替换true
- AngularJs对ng消息的自定义替换
- 用超链接替换URLS
- 用cdata标记替换脚本标记
- Javascript对象类在单击时打开窗口进行颜色选择,并在更改时替换对象背景颜色
- 在javascript中,I'我很难弄清楚如何让regex只替换捕获而不替换匹配
- 替换url中变量的值
- 我希望在不替换现有变量的情况下恢复localStorage中的变量
- Wordpress:替换源(域名)链接
- Javascript将字符串中的part替换为part的part