JS 正则表达式(学习笔记2)匹配网址url参数






































. 匹配除换行符的任意字符
\w 匹配字母,数字,下划线,汉字
\s 匹配任意空白符
\d 匹配数字
^ 匹配字符开始位置
$ 匹配字符结束位置
* 重复零次或更多次
+ 重复一次或更多次
? 重复零次或一次
{n} 重复N次
{n,} 重复N次或更多次
{n,m} 重复N次或m次
url参数匹配的问题

var str="http://ladjkfldfjlfjlafjlfk/-1-1.html?sdlfjsdlkfjsdlfjo";//这是一个url
//要求把URL里面-1.html的 -1 替换成一个别的东西
//所以我这样写
re=/-\d+\.html/;
// - 匹配一个 - \d+ 匹配一个数字多位或者1位 \. 匹配一个 . html匹配一个html字符穿
// 所以上面的正则匹配的就是 -1.html 或者 -11.html 或者 -35.html 等等
alert(str.replace(re,"-33.html"));//然后用正则的replace方法去替换就OK了
//当然只要这个URL 不那么邪恶基本上都可以完成任务,呵呵

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

其实也可以用数组的方法匹配,稍微麻烦些

如果你又更好的方法。可以留言。

(0)

相关推荐

  • js匹配网址url的正则表达式集合

    DNS规定,域名中的标号都由英文字母和数字组成,每一个标号不超过63个字符,也不区分大小写字母.标号中除连字符(-)外不能使用其他的标点符号.级别最低的域名写在最左边,而级别最高的域名写在最右边.由多个标号组成的完整域名总共不超过255个字符.所以验证则网址url的正则可以如下几种 方法一: function checkUrl(urlString){ if(urlString!=""){ var reg=/(http|ftp|https):\/\/[\w\-_]+(\.[\w\-_]+

  • javascript中匹配价格的正则表达式

    复制代码 代码如下: /^(d*.d{0,2}|d+).*$/ hansir给出的测试代码如下: 复制代码 代码如下: <!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/xht

  • js正则表达式惰性匹配和贪婪匹配用法分析

    本文实例讲述了js正则表达式惰性匹配和贪婪匹配用法.分享给大家供大家参考,具体如下: 在讲贪婪模式和惰性模式之前,先回顾一下JS正则基础: 写法基础: ①不需要双引号,直接用//包含 => /wehfwue123123/.test(); ②反斜杠\表示转义 =>/\.jpg$/ ③用法基础:.test(str); 语法: ①锚点类 /^a/=>以"a"开头 /\.jpg$/=>以".jpg"结尾 ②字符类 [abc]:a或b或c [0-9]:

  • js 正则表达式学习笔记之匹配字符串

    今天看了第5章几个例子,有点收获,记录下来当作回顾也当作分享. 关于匹配字符串问题,有很多种类型,今天讨论 js 代码里的字符串匹配.(因为我想学完之后写个语法高亮练手,所以用js代码当作例子) 复制代码 代码如下: var str1 = "我是字符串1哦,快把我取走", str2 = "我是字符串2哦,快把我取走"; 比如这样一个字符串,匹配起来很简单 /"[^"]*"/g 即可.   PS: 白色截图是 chrome 34 控制台中

  • js正则表达式最长匹配(贪婪匹配)和最短匹配(懒惰匹配)用法分析

    本文实例分析了js正则表达式最长匹配(贪婪匹配)和最短匹配(懒惰匹配)用法.分享给大家供大家参考,具体如下: 最近在阅读RequireJS 2.1.15源码,源码开始处定义了一系列的变量,有4个正则表达式: var commentRegExp = /(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg, cjsRequireRegExp = /[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g, jsS

  • js正则表达式匹配数字字母下划线等

    1.一个正则表达式,只含有汉字.数字.字母.下划线不能以下划线开头和结尾: ^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]+$ 其中: ^ 与字符串开始的地方匹配 (?!_) 不能以_开头 (?!.*?_$) 不能以_结尾 [a-zA-Z0-9_\u4e00-\u9fa5]+ 至少一个汉字.数字.字母.下划线 $ 与字符串结束的地方匹配 放在程序里前面加@,否则需要\\进行转义 @"^(?!_)(?!.*?_$)[a-zA-Z0-9_\u4e00-\u9fa5]

  • 浅谈JavaScript正则表达式分组匹配

    语法 元字符:(pattern) 作用:用于反复匹配的分组 属性$1~$9 如果它(们)存在,用于得到对应分组中匹配到的子串 \1或$1 用于匹配第一个分组中的内容 \2或$2 用于匹配第一个分组中的内容 ... \9或$9 用于匹配第一个分组中的内容 用法示例 var reg = /(A+)((B|C|D)+)(E+)/gi;//该正则表达式有4个分组 //对应关系 //RegExp.$1 <-> (A+) //RegExp.$2 <-> ((B|C|D)+) //RegExp.

  • javascript正则表达式模糊匹配IP地址功能示例

    本文实例讲述了javascript正则表达式模糊匹配IP地址功能.分享给大家供大家参考,具体如下: function checkip() { var strIP = document.getElementById("accessip").value; var re = /^(\d{1,3}|\*)\.(\d{1,3}|\*)\.(\d{1,3}|\*)\.(\d{1,3}|\*)$/g //模糊匹配IP地址的正则表达式 if(re.test(strIP)){ if(RegExp.$1

  • js:校验IPv6地址的正则表达式

    function isIPv6(str) { return str.match(/:/g).length [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

  • Java/Js下使用正则表达式匹配嵌套Html标签

    通用 HTML 标签区配正则 最近看网站日志,发现有人在博客上转了我不知道几年前写的一个匹配 HTML 标签的正则,刚好最近也在做一些相关的事情,顿时来了兴趣.就拿回来改改,成了下面这样,可能会有一些 case 遗漏,欢迎修改,已知在内嵌 <script> 复杂内容的处理能力较弱,不过对纯 HTML 来说已经够用,拿来做一些分析工具还是不错滴. 复制代码 代码如下: <script type="text/javascript"> var str = "

  • javascript使用正则表达式检测IP地址

    正则表达式: ((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?) ((2[0-4]\d|25[0-5]|[01]?\d\d?)\.){3}(2[0-4]\d|25[0-5]|[01]?\d\d?) 红色块代表:第一个字符是2,第二个字符是0到4,第三个字符是任意一位数字.表示200~249. 绿色块代表:第一个字符是2,第二个字符是5,第三个字符是0到5.表示250~255. 蓝色块代表:第一个字符是0,或者1,或者

  • JS 正则表达式的位置匹配

    http://regexpal.com/ 上面这个网站可以用于在线检测JS的正则表达式语法 除了熟知的几个固定字符表示位置: ^ : Match the beginning of the string and, in multiline searches, the beginning of a line. $ : Match the end of the string and, in multiline searches, the end of a line. \b: Match a word

  • js Abba逆向前瞻正则匹配实例

    核心代码: <script> var s1 = 'acritan'; var s2 = 'bassarisk'; var s3 = 'commotive'; //找出不包含 "abba" 模式的单词 var r = /^(?!.*?(.)(.)\2\1)/i; alert(r.test(s1)); // true alert(r.test(s2)); // false alert(r.test(s3)); // false </script> 零宽断言(?!ex

随机推荐