解决js正则匹配换行问题实现代码
<div id=”main”>
<div id=”left”>
</div>
<div id=”right”>
php
</div>
</div>
<div id=”main”>
<div id=”left”></div>
<div id=”right”>
php
</div>
</div>
如果用JS来写呢,应该如何来写呢?
JS的正解代码如下:
HTML code:
代码如下:
<script type="text/javascript">
function getV(){
var str=document.getElementById("regtext").value;
var re=/([\n\r])(\s)*(\<\/div\>?(\s)*\<div)+/g;
str=str.replace(re,"$3");
alert(str);
}
</script>
<textarea id="regtext" cols="20" rows="20">
<div id="main">
<div id="left">
</div>
<div id="Div1">
</div>
<div id="Div2">
</div>
<div id="right">
php
</div>
</div>
</textarea>
<input type="button" onclick="getV()" value="测试" />
相关推荐
-
JS正则表达式修饰符中multiline(/m)用法分析
本文实例分析了JS正则表达式修饰符中multiline(/m)用法.分享给大家供大家参考,具体如下: JavaScript正则表达式有3种修饰符/i./m和/g./i是我们最常用,也是最好理解的,代表正则表达式匹配的时候不区分大小写. var regex = /abc/i; alert(regex.test("aBc"));//true /m代表多行模式multiline,如果目标字符串中不含有换行符\n,即只有一行,那么/m修饰符没有任何意义. var multiline = /ab
-
js正则表达式最长匹配(贪婪匹配)和最短匹配(懒惰匹配)用法分析
本文实例分析了js正则表达式最长匹配(贪婪匹配)和最短匹配(懒惰匹配)用法.分享给大家供大家参考,具体如下: 最近在阅读RequireJS 2.1.15源码,源码开始处定义了一系列的变量,有4个正则表达式: var commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg, cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g, jsS
-
JS正则表达式修饰符global(/g)用法分析
本文实例讲述了JS正则表达式修饰符global(/g)用法.分享给大家供大家参考,具体如下: /g修饰符代表全局匹配,查找所有匹配而非在找到第一个匹配后停止.先看一段经典代码: var str = "123#abc"; var noglobal = /abc/i;//非全局匹配模式 console.log(re.test(str)); //输出ture console.log(re.test(str)); //输出ture console.log(re.test(str)); //输出
-
实例分析js和C#中使用正则表达式匹配a标签
废话不多说,都在代码中,直接上 JS代码: 复制代码 代码如下: <html> <head> <script language="javascript"> var a='<P><A href=\'~abc/ccg/ab.jpg\' width="3">文字</A><A width="4" style="color:#ddd; font-weight:b
-
JS前向后瞻正则表达式定义与用法示例
本文实例讲述了JS前向后瞻正则表达式定义与用法.分享给大家供大家参考,具体如下: 定义 x(?=y) 匹配'x'仅仅当'x'后面跟着'y'.这种叫做正向肯定查找. 比如,/Jack(?=Sprat)/会匹配到'Jack'仅仅当它后面跟着'Sprat'./Jack(?=Sprat|Frost)/匹配'Jack'仅仅当它后面跟着'Sprat'或者是'Frost'.但是'Sprat'和'Frost'都不是匹配结果的一部分. x(?!y) 匹配'x'仅仅当'x'后面不跟着'y',这个叫做正向否定查找.
-
javascript正则匹配汉字、数字、字母、下划线
javascript正则检测只含有汉字.数字.字母.下划线不能以下划线开头和结尾 遇到一个用户名检测的的问题,查了一下,总结例子如下: 复制代码 代码如下: var reg = /^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$/;if (!reg.test(实际取值的字符串)) { alert('请输入5-24位字符:支持中文.英文.数字."_",推荐使用中文');}
-
js正则表达式惰性匹配和贪婪匹配用法分析
本文实例讲述了js正则表达式惰性匹配和贪婪匹配用法.分享给大家供大家参考,具体如下: 在讲贪婪模式和惰性模式之前,先回顾一下JS正则基础: 写法基础: ①不需要双引号,直接用//包含 => /wehfwue123123/.test(); ②反斜杠\表示转义 =>/\.jpg$/ ③用法基础:.test(str); 语法: ①锚点类 /^a/=>以"a"开头 /\.jpg$/=>以".jpg"结尾 ②字符类 [abc]:a或b或c [0-9]:
-
js正则表达式实现数字每隔四位用空格分隔代码
数字每隔四位用空格分隔代码实例: 分享一段代码实例,它实现了数字每隔四位就用空格分隔. 这样的效果在填写银行卡的时候十分常见,这也是非常人性化的举措. 代码实例如下: <!doctype html> <html> <head> <meta charset="utf-8"> <title>我们</title> <script src="http://libs.baidu.com/jquery/1.9.
-
JS经典正则表达式笔试题汇总
本文实例总结了JS经典正则表达式笔试题.分享给大家供大家参考,具体如下: 一.复习字符串的传统操作 如何获取一个字符串中的数字字符,并按数组形式输出,如 dgfhfgh254bhku289fgdhdy675gfh 输出[254,289,675] 分析:循环用charAt()的方法获取到每一个子字符串,判断他是不是在0~9之间,是就把他扔到准备好的数组里 var str="dgfhfgh254bhku289fgdhdy675gfh"; findNum(str); function fin
-
编写高质量的js之正确理解正则表达式回溯
当一个正则表达式扫描目标字符串时,从左到右逐个扫描正则表达式的组成部分,在每个位置上测试能不能找到一个匹配.对于每一个量词和分支,都必须确定如何继续进行.如果是一个量词(如*.+?或者{2,}),那么正则表达式必须确定何时尝试匹配更多的字符:如果遇到分支(通过|操作符),那么正则表达式必须从这些选项中选择一个进行尝试. 当正则表达式做出这样的决定时,如果有必要,它会记住另一个选项,以备返回后使用.如果所选方案匹配成功,正则表达式将继续扫描正则表达式模板,如果其余部分匹配也成功了,那么匹配就结束了
-
js 正则表达式学习笔记之匹配字符串
今天看了第5章几个例子,有点收获,记录下来当作回顾也当作分享. 关于匹配字符串问题,有很多种类型,今天讨论 js 代码里的字符串匹配.(因为我想学完之后写个语法高亮练手,所以用js代码当作例子) 复制代码 代码如下: var str1 = "我是字符串1哦,快把我取走", str2 = "我是字符串2哦,快把我取走"; 比如这样一个字符串,匹配起来很简单 /"[^"]*"/g 即可. PS: 白色截图是 chrome 34 控制台中
随机推荐
- 基于jQuery.validate及Bootstrap的tooltip开发气泡样式的表单校验组件思路详解
- Extjs入门之动态加载树代码
- iOS中使用UItableviewcell实现团购和微博界面的示例
- javascript实现节点(div)名称编辑
- asp.net ListView 数据绑定
- CodeIgniter框架提示Disallowed Key Characters的解决办法
- php curl常用的5个经典例子
- 详解C语言结构体中的函数指针
- mysql unsigned 用法及相减出现补数溢出解决方法
- 详解Android MacAddress 适配心得
- jquery如何获取元素的滚动条高度等实现代码
- 15道非常经典的Java面试题 附详细答案
- 对优化Ruby on Rails性能的一些办法的探究
- 在Linux下用scp复制文件无需输入密码的技巧
- Python解析最简单的验证码
- sql Union和Union All的使用方法
- javascript中return,return true,return false三者的用法及区别
- WINDOWS SERVER 2008远程桌面端口修改方法
- 配置XManager5连接Linux图形化界面详解
- php操作zip在不解压缩包的情况下显示压缩包中的图片