Javascript正则匹配HTML字符串

  在前台处理字符串时,有时并不需要动态拼接字符串,某一部分的字符串可能是固定的,因此在开发过程中我们可以利用正则表达式将html元素匹配出来。如下:

var html = (function(){/*
    <div>
        <div>
            <p>我是div里面的p</p>
            <div>我是div里面的div</div>
        </div>
    </div>
*/}).toString().match(/[^]*\/\*([^]*)\*\/\}$/)[1];

将html以注释的形式写在括号里面,在通过match方法匹配出整个字符串,返回的结果截图如下:

返回的结果恰好是我们写在注释里面的代码,这样如果我们的样式修改了,我们只需要修改注释里面的代码,避免了拼接字符串的带来的麻烦操作!

原文地址:https://www.cnblogs.com/hz-1762/p/9011788.html

时间: 2024-11-04 04:12:35

Javascript正则匹配HTML字符串的相关文章

javascript 正则匹配 提取全部 preg_match_all matchAll方法

javascript 提取所有的的方法,javascript中没有matchAll这个方法. 用while来实现类似 PHP 中的preg_match_all() :(by default7#zbphp.com) <!DOCTYPE html> <html> <head> <title></title> </head> <body> <select name="AgentIdP" id="

常用的JavaScript正则匹配规则代码收藏,很实用

收集一些常用的JavaScript正则表达式匹配规则,比如匹配电话号码.Email.中文字符.身份证号.邮编.QQ号.过滤空白行.匹配特定数字等.觉得这玩意是很有用的,只不过自己水平菜,老是自己写不出,看了这个文档,觉得心里踏实很多,用到正则匹配的时候,看下这个,相信为让你省不少时间.注:本正则不仅限于在JS中使用,其它语言也可以借鉴. 匹配特定数字: ^[1-9]\d*$ //匹配正整数 ^-[1-9]\d*$ //匹配负整数 ^-?[1-9]\d*$ //匹配整数 ^[1-9]\d*|0$

我也谈javascript正则匹配

一.javascript 正则全局匹配 g 慎用test()方法 来个例子: var a = /^[a-z]+/gi; a.test('bb123'); //true a.lastIndex ; // 0 a.test('bb123') // false a.lastIndex ; // 2 a.test('bb123'); // true 为什么会出现这种一会正确,一会又错误的情况呢?这个就是应为 全局匹配 g 作用所影响的了..嘿嘿 因为多次调用test方法时会从上一次匹配的位置开始匹配,可

javascript正则匹配(转)

区号+座机号码+分机号码:regexp="^(0[0-9]{2,3}\-)?([2-9][0-9]{6,7})+(\-[0-9]{1,4})?$" 手机(中国移动手机号码):regexp="^((\(\d{3}\))|(\d{3}\-))?13[456789]\d{8}|15[89]\d{8}" 所有手机号码:regexp="^((\(\d{3}\))|(\d{3}\-))?13[0-9]\d{8}|15[89]\d{8}"(新添加了158,15

JavaScript——正则匹配、正则提取、正则替换

正则匹配 // 匹配日期 var dateStr = '2015-10-10'; var reg = /^\d{4}-\d{1,2}-\d{1,2}$/ console.log(reg.test(dateStr)); 正则提取 // 1. 提取工资 var str = "张三:1000,李四:5000,王五:8000."; var array = str.match(/\d+/g); console.log(array); // 2. 提取email地址 var str = "

javascript 正则匹配手机号码

  <form class="form-horizontal" name="mobileform" style="padding:10px;"  onSubmit="return checkMobile();"> <div class="span12"> <span class="pull-left title-ipone">手机号:</span

正则匹配去掉字符串中的html标签

1.得到超链接中的链接地址: string matchString = @"<a[^>]+href=\s*(?:'(?<href>[^']+)'|""(?<href>[^""]+)""|(?<href>[^>\s]+))\s*[^>]*>"; 2.得到title标签中的值: string matchString = @"<title>(?&

关于Hive正则匹配中文字符串的问题

首先,中文字符集为 '^[\\4e00-\\u9fa5]$' 1.如果直接在Hive命令行中使用, 则直接使用 '^[\\u4e00-\\u9fa5]$' 进行匹配 2.如果在终端调用,则需叫上转义符,如 hive -e "select '中国' rlike '^[\\\u4e00-\\\u9fa5]$'" 3.在scala和java中使用 同1: val regex = new Regex("[\\u4e00-\\u9fa5]") val a = regex.fi

php正则匹配到字符串里面的a标签

$cont = preg_replace('/<a href=\"(.*?)\".*?>(.*?)<\/a>/i','',$cont);