javascript字符串替换为RegExp
javascript string replace with RegExp
我得到了一个问题与javascript RegExp。当我点击按钮时,我想用textbox
值替换a.href
。但是,我不想替换整个字符串只是想找到并替换那些与我的RegExp完全匹配的。这是我的代码
$(document).ready(function(){
$('#btnRun').click(function(){
var str = encodeURIComponent($('#mydata').val());
var regExp = new RegExp('''b' +encodeURIComponent( $('a').html()) + '''b','gi');
$('a').attr('href',$('a').attr('href').replace(regExp,str));
});
});
这是我的测试代码http://jsfiddle.net/4uAp5/1/
不要认为你需要一个正则表达式来做这个。这段代码应该完成您所描述的:
$('a').attr('href',$("#mydata").val());
同样值得注意的是,您定位链接的方式- $('a')
-将选择页面上的每个链接…
''b
不匹配,因为href值是编码的,结果(在这个特定的示例中)是cMyTest1
。c
不满足''b
。根据具体情况,有多种解决方案。一种是在使用regex之前先在href上使用decodeURI
,然后再对其进行编码(尽管可能不需要)。
相关文章:
- Javascript RegExp替换.如何携带未知字符进行替换
- RegExp-替换搜索时的“html”标记并突出显示
- 使用Javascript Regexp替换基于变量的字符串部分
- RegExp替换不替换为模式
- Javascript RegExp 替换以获取时间
- JavaScript RegExp替换文本
- Javascript-RegExp-替换未被字母包围的字符
- 是否有任何regexp替换
- Javascript Regexp:替换大括号
- 使用regexp替换字符串末尾的换行符
- RegExp替换JavaScript中的子字符串
- 仅用RegExp替换字符串中的外部标签
- RegExp替换每隔一秒的星号
- Javascript regexp替换用引号括起来的东西
- Javascript的regexp替换,多行
- Regexp替换输入字段中的符号
- Javascript用RegExp替换所有数字
- 我如何做一个jQuery模板内的RegExp替换
- Firefox在JavaScript中使用regexp替换字符串时出现错误
- JS Regexp替换"illegal"字符来创建PHP函数名