JS正则表达式替换页面中内容

问题描述

JS正则表达式替换页面中内容
 我想用正则表达式替换table中除了标签""<tr class=""template"" ng-repeat=""model in model.child""></td>""里面的ng-model中的内容,将ng-model=""model.*""替换成ng-model=""model.xx.*""。html页面如下:        <table width=""592"" height=""842"" border=""1"" align=""center"">          <tr>            <td align=""center"" colspan=""2"" width=""16%"">服务资源名称</td>            <td colspan=""8""><input class=""text"" name=""serve_resource_name"" type=""text"" ng-model=""model.serve_resource_name"" id=""serve_resource_name"" title=""服务资源名称"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text""/></td>          </tr>          <tr>            <td align=""center"" rowspan=""4"" width=""8%"">访<br>问<br>端</td>            <td align=""center"" style=""width:8%"">系统</td>            <td colspan=""3""><input class=""text"" name=""system"" type=""text"" ng-model=""model.system"" id=""system"" title=""系统"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text""/></td>            <td align=""center"" colspan=""2"" width=""16%"">IP</td>            <td colspan=""3""><input class=""text"" name=""ip"" type=""text"" ng-model=""model.ip"" id=""ip"" title=""IP"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text""/></td>          </tr>          <tr>            <td align=""center"">用户名</td>            <td colspan=""3""><input class=""text"" name=""username"" type=""text"" ng-model=""model.username"" id=""username"" title=""用户名"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text""/></td>            <td align=""center"" colspan=""2"" width=""16%"">密码</td>            <td colspan=""3""><input class=""text"" name=""password"" type=""text"" ng-model=""model.password"" id=""password"" title=""密码"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text""/></td>          </tr>          <tr>            <td align=""center"" width=""16%"">期限</td>            <td colspan=""8""><input class=""text"" name=""time_limit"" type=""text"" ng-model=""model.time_limit"" id=""time_limit"" title=""期限"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text""/></td>          </tr>           <tr>                <td align=""center"" width=""8%"" height=""150px"">流<br>量<br>控<br>制</td>                <td colspan=""9"" style=""padding:0; vertical-align:top;"">                <div style=""overflow:auto; height:150px;"">                    <table id=""697e5afad8e540659efb412ea0347b5d"" name=""llkz"" fnote=""流量控制"" fdatatype=""1"" plugins=""childtable"" border=""1"" cellspacing=""0"" cellpadding=""0"">                        <thead>                            <tr class=""firstRow"">                                <td align=""center"" width=""24%"">时间段</td>                                <td align=""center"" width=""24%"">时间间隔<br>(次/分钟)</td>                                <td align=""center"" width=""24%"">访问次数上限</td>                                <td align=""center"" width=""24%"">访问流量上限</td>                                <td align=""center""  ><div class=""img-add"" ng-click=""imgAdd('model.table')""></div></td>                          </tr>                        </thead>                        <tbody>                            <tr class=""template"" ng-repeat=""model in model.child"">                                <td ><input name=""time_start"" type=""text"" ng-model=""model.time_start"" id=""time_start"" title=""开始时间"" value="""" maxlength="""" placeholder=""8:00""/>至<input name=""time_end"" type=""text"" ng-model=""model.time_end"" id=""time_end"" title=""结束时间"" value=""""placeholder=""22:00""/></td>                                <td ><input name=""time_interval_count"" type=""text"" ng-model=""model.time_interval_count"" id=""time_interval_count"" title=""时间间隔次数"" value="""" />/<input name=""time_interval_min"" type=""text"" ng-model=""model.time_interval_min"" id=""time_interval_min"" title=""时间间隔分钟数"" value="""" /></td>                                <td ><input class=""text"" name=""visit_count_limit"" type=""text"" ng-model=""model.visit_count_limit"" id=""visit_count_limit"" title=""访问次数上限"" value="""" ""/></td>                                <td ><input class=""text"" name=""visit_flux_limit"" type=""text"" ng-model=""model.visit_flux_limit"" id=""visit_flux_limit"" title=""访问流量上限"" value="""" /></td>                            </tr>                        </tbody>                    </table></div>                </td>            </tr>          <tr>            <td align=""center"" width=""8%"">备<br>注</td>            <td colspan=""9"">             <div class=""word-text""><textarea class=""bor"" id=""remark"" name=""remark"" ng-model=""model.remark"" title=""申请理由及目的"" maxlength="""" plugins=""textarea"" fallowblank=""false""></textarea></div>            </td>          </tr>          </table>

解决方案

dom操作就行了,正则不好弄

你的html代码<script src=""http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.4.2.min.js""></script><script>    $('[ng-model]').attr('ng-model' function () {        if ($(this).closest('tr.template').length == 0) return this.getAttribute('ng-model').replace('.' '.xx.');        return this.getAttribute('ng-model');    });</script>

解决方案二:
查找 (.*)ng-model=""model.(.*)("".*)

替换 1ng-model=""model.xx.23

解决方案三:

 <textarea id=""ta"">    <table width=""592"" height=""842"" border=""1"" align=""center"">        <tr>            <td align=""center"" colspan=""2"" width=""16%"">服务资源名称</td>            <td colspan=""8""><input class=""text"" name=""serve_resource_name"" type=""text"" ng-model=""model.serve_resource_name"" id=""serve_resource_name"" title=""服务资源名称"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text"" /></td>        </tr>        <tr>            <td align=""center"" rowspan=""4"" width=""8%"">访<br>问<br>端</td>            <td align=""center"" style=""width:8%"">系统</td>            <td colspan=""3""><input class=""text"" name=""system"" type=""text"" ng-model=""model.system"" id=""system"" title=""系统"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text"" /></td>            <td align=""center"" colspan=""2"" width=""16%"">IP</td>            <td colspan=""3""><input class=""text"" name=""ip"" type=""text"" ng-model=""model.ip"" id=""ip"" title=""IP"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text"" /></td>        </tr>        <tr>            <td align=""center"">用户名</td>            <td colspan=""3""><input class=""text"" name=""username"" type=""text"" ng-model=""model.username"" id=""username"" title=""用户名"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text"" /></td>            <td align=""center"" colspan=""2"" width=""16%"">密码</td>            <td colspan=""3""><input class=""text"" name=""password"" type=""text"" ng-model=""model.password"" id=""password"" title=""密码"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text"" /></td>        </tr>        <tr>            <td align=""center"" width=""16%"">期限</td>            <td colspan=""8""><input class=""text"" name=""time_limit"" type=""text"" ng-model=""model.time_limit"" id=""time_limit"" title=""期限"" value="""" maxlength="""" plugins=""text"" fallowblank=""false"" datatype=""text"" /></td>        </tr>        <tr>            <td align=""center"" width=""8%"" height=""150px"">流<br>量<br>控<br>制</td>            <td colspan=""9"" style=""padding:0; vertical-align:top;"">                <div style=""overflow:auto; height:150px;"">                    <table id=""697e5afad8e540659efb412ea0347b5d"" name=""llkz"" fnote=""流量控制"" fdatatype=""1"" plugins=""childtable"" border=""1"" cellspacing=""0"" cellpadding=""0"">                        <thead>                            <tr class=""firstRow"">                                <td align=""center"" width=""24%"">时间段</td>                                <td align=""center"" width=""24%"">时间间隔<br>(次/分钟)</td>                                <td align=""center"" width=""24%"">访问次数上限</td>                                <td align=""center"" width=""24%"">访问流量上限</td>                                <td align=""center""><div class=""img-add"" ng-click=""imgAdd('model.table')""></div></td>                            </tr>                        </thead>                        <tbody>                            <tr class=""template"" ng-repeat=""model in model.child"">                                <td><input name=""time_start"" type=""text"" ng-model=""model.time_start"" id=""time_start"" title=""开始时间"" value="""" maxlength="""" placeholder=""8:00"" />至<input name=""time_end"" type=""text"" ng-model=""model.time_end"" id=""time_end"" title=""结束时间"" value="""" placeholder=""22:00"" /></td>                                <td><input name=""time_interval_count"" type=""text"" ng-model=""model.time_interval_count"" id=""time_interval_count"" title=""时间间隔次数"" value="""" />/<input name=""time_interval_min"" type=""text"" ng-model=""model.time_interval_min"" id=""time_interval_min"" title=""时间间隔分钟数"" value="""" /></td>                                <td><input class=""text"" name=""visit_count_limit"" type=""text"" ng-model=""model.visit_count_limit"" id=""visit_count_limit"" title=""访问次数上限"" value="""" "" /></td>                                <td><input class=""text"" name=""visit_flux_limit"" type=""text"" ng-model=""model.visit_flux_limit"" id=""visit_flux_limit"" title=""访问流量上限"" value="""" /></td>                            </tr>                        </tbody>                    </table>                </div>            </td>        </tr>        <tr>            <td align=""center"" width=""8%"">备<br>注</td>            <td colspan=""9"">                <div class=""word-text""><textarea class=""bor"" id=""remark"" name=""remark"" ng-model=""model.remark"" title=""申请理由及目的"" maxlength="""" plugins=""textarea"" fallowblank=""false""></textarea></div>            </td>        </tr>    </table></textarea><script>    var ta = document.getElementById('ta') s = ta.valuetemplate='';    s = s.replace(/<trs+class=""template""[sS]+?</tr>/ function ($0) { template = $0; return '{template}' })        .replace(/ng-model=""([^""]+)""/g function ($0$1) {return 'ng-model=""'+$1.replace('.''.xx.')+'""' })        .replace('{template}' template)    ta.value = s;</script>

解决方案四:
Js正则表达式替换
JS中正则表达式替换单引号等说明

时间: 2024-08-18 16:30:12

JS正则表达式替换页面中内容的相关文章

求一js正则表达式把页面中的p标签全部换成div

问题描述 求一js正则表达式把页面中的p标签全部换成div 解决方案 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head> &

Dreamweaver中使用正则表达式替换href中的内容

 可能在dw中使用正则表达式替换字符串的朋友很少,下面我来给大家介绍Dreamweaver中使用正则表达式替换href中的内容吧.    在Dreamweaver中使用正则表达式替换href中的内容,就像下面这些href中的内容复杂多样的情况下,href="/html/u.html",href="/tuho/huko.html",想将它们全部替换成href="#" ,具体做法如下: 查找: href="[^"]*"

使用HTML5的JS选择器操作页面中的元素

使用HTML5的JS选择器操作页面中的元素. 文件命名为:querySelector.html,可在Chrome浏览器中预览效果. <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <title>使用HTML5的JS选择器操作页面中的元素</title> </head> <body>

使用JS正则表达式 替换括号,尖括号等_javascript技巧

如下所示: function toTxt(str) { var RexStr = /\<|\>|\"|\'|\&/g str = str.replace(RexStr, function(MatchStr) { switch (MatchStr) { case "<": return "<"; break; case ">": return ">"; break; case

PHP实现通过正则表达式替换回调的内容标签

  本文实例讲述了PHP实现通过正则表达式替换回调的内容标签.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 function my_wp_plugin_tag_action($content,$tag,$function,$args = FALSE) { // match all regular expressions preg_match_all($tag,$content,$match

JS正则表达式获取字符串中特定字符的方法

 这篇文章主要介绍了JS正则表达式获取字符串中得特定字符,通过replace的回调函数获取,需要的朋友可以参考下 实现的效果:在字符串中abcdefgname='test'sddfhskshjsfsjdfps中获取name的值test    实现的机制:通过replace的回调函数获取.    代码:  代码如下: var str = "abcdefgname='test'sddfhskshjsfsjdfps";  var reg = /name='((w|-|s)+)/ig;  st

PHP实现通过正则表达式替换回调的内容标签_php技巧

本文实例讲述了PHP实现通过正则表达式替换回调的内容标签.分享给大家供大家参考.具体实现方法如下: function my_wp_plugin_tag_action($content,$tag,$function,$args = FALSE) { // match all regular expressions preg_match_all($tag,$content,$matches); if (count($matches)>0) { // filter duplicates $matche

JavaScript利用正则表达式替换字符串中的内容_javascript技巧

话不多说,请看具体实现代码 //从字符串'Is this all there is'中剪去'is': var str='Is this all there is'; var subStr=new RegExp('is');//创建正则表达式对象 var result=str.replace(subStr,"");//把'is'替换为空字符串 console.log(result);//Is th all there is var subStr=new RegExp('is','i');

JS正则表达式提取字符串中所有汉字的脚本

在网上发现有人用vbscript正则表达式实现了这个功能,但代码很厂,偶改成js的了,很短的一段代码: <script type="text/javascript"> var str="怎样从一个Html页面中提取所有汉字呢?不能有其它Html代码."; alert(str.replace(/[^\u4e00-\u9fa5]/gi,"")); </script> [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]