js 正则匹配 url

正则匹配规定范围的url

 

需求要求,textarea里面的文本如果有http开头以#code=股票代码结束的url要给其加上a链接发送给后台。

 

写了个例子如:

<textarea id="text">这个是测试的地址:http://news.10jqka.com.cn/field/20140701/566341184.shtml#code=300032#code=300032
测试测试测试文本</textarea>
     <script type="text/javascript">
    var str = document.getElementById('text').value;
    alert(str);   
    var reg = str.match(/http:(.)*#code=[\w]+/ig);
    alert(reg);
    var strings = str.replace(reg[0],'<a href="'+reg[0] +'">'+reg[0]+'</a>');
    alert(strings)
    </script>

 

alert(str);出来的是textarea的里面的内容

alert(reg);出来的匹配到的:http://news.10jqka.com.cn/field/20140701/566341184.shtml#code=300032#code=300032

alert(strings);出来的是<a href="http://news.10jqka.com.cn/field/20140701/566341184.shtml#code=300032#code=300032">http://news.10jqka.com.cn/field/20140701/566341184.shtml#code=300032#code=300032</a>

 

最后是把strings传给后台

 

分享一个网站正则匹配 http://www.rubular.com/

 

 

<textarea id="text" style="width:300px; height:400px"></textarea>
    <input type="button" id="inn" value="jjj" />
     <script type="text/javascript">
    $("#inn").click(function(){
      var str = document.getElementById('text').value;
      var aaa = str.replace(/<br\s*\/?\s*>/ig,"\n").replace(/<\/?[^>]*>/g, '');
      var bbb = str.replace(/<br\s*\/?\s*>/ig,"\n").replace(/<\/?[^>]*>/g, '').replace(/(&nbsp;)|\u00a0/g,' ');
    alert(aaa);
    alert(bbb);
    });
   
    </script>

 

replace(/<br\s*\/?\s*>/ig,"\n");是把<br />换成\n输出

.replace(/<\/?[^>]*>/g, '');过滤所有的html标签

.replace(/(&nbsp;)|\u00a0/g,' ');把&nbsp;换成空输出

 

 

正则表达式学习

http://www.oschina.net/question/12_9507

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值