JS regular expression to obtain HTML elements, jshtml Elements
This article describes how to obtain HTML elements using JS regular expressions. We will share this with you for your reference. The details are as follows:
var html = $("#summaryTemplate").html();var imageMath = /]*(?=target-type=("|')replace("|'))[^/,<,>]*\/>/;var scriptMath = /<script [^<,>]*(?=target-type=("|')replace("|'))[^/,<,>]*><\/script>/;var linkMath = /<link [^<,>]*(?=target-type=("|')replace("|'))[^/,<,>]*\/>/;alert(html.match(imageMath));var ht="asf
Why is the array returned by Math not multiple Img objects,
["
I don't understand ....
It was my fault to verify that there was g configuration in the Regular Expression and whether to move it down to the next target.
Correct
var attrbuteMath = "(?:\\w+)\\s*(?:=[^{,},<,>]+)";var srcMath = "src(?:=[^{,},<,>]+)";var hrefMath = "href(?:=[^{,},<,>]+)";var scriptMath = "<script\\s+(?:" + attrbuteMath + ")*><\/script>";var ge = new RegExp(scriptMath,"gi");// var html = "<script asdfsadf='asdfsaf' asf=aaadsdfsdf style='' src='' ><\/script>asdfsaf<script asdfsadf='asdfsaf' asf=''aa adsdfsdf ><\/script>";var html = $("#txtHtml").val();var result = ge.exec(html);alert(result);
G indicates the string to be searched, rather than stopping the first match. If the mode is case insensitive, you can add the character I to the second parameter.
PS: here we will provide two very convenient Regular Expression tools for your reference:
Javascript Regular Expression online testing tool:
Http://tools.jb51.net/regex/javascript
Regular Expression generation tool:
Http://tools.jb51.net/regex/create_reg