什么是 RegExp?】的更多相关文章

前言: 正则对于一个码农来说是最基础的了,而且在博客园中,发表关于讲解正则表达式的技术文章,更是数不胜数,各有各的优点,但是就是这种很基础的东西,如果我们不去真正仔细研究.学习.掌握,而是抱着需要的时候,就去网上找现成的正则表达式来使用,像这样恐怕永远都是很难对正则有一个详细且全面的了解. 所以通过查阅书籍.网上的资料以及通过自己的理解.组织.表达,写了这篇<JavaScript RegExp 基础详谈>,算是对自己学习过程的一次总结梳理吧. 如果有什么欠缺,遗漏或者不足的地方,多多麻烦大家的…
首先我们来思考以下两个个场景 我们使用window操作系统,有时候需要找一个文件,刚刚好这个文件我不知道放哪里去了,这个时候我们该怎么办呢? 我们使用word写论文的时候,不小心将"订价"中的"订"字写成了"定",这时候我们该怎么办呢? 对于第一种情况,我们就会用到系统的文件搜索功能,输入文件的名字,系统就会帮我们找到这个文件的位置. 对于第二种情况,我们会用到软件提供的替换功能,首先查找错误的内容,然后将错误的内容替换成正确的内容. 类似的场景…
上次写了js正则的字面量声明,今天说说RegExp()构造函数声明: var p=/cat/g;   //字面量声明var p=new RegExp('cat','g') //构造函数声明 它两所表达的意思是一样的,看看写法有啥不同,一个用 //   : 一个用 ""   : String支持正则表达式的方法  match(): 正则表达式方法  exec(): 看过我前面写的字面量声明的人肯定知道使用字面量声明和构造函数声明的区别就是表达式不一样:其它的都没改动:下面再说一下重要的一…
主要懂3个mysql的方法:replace[替换]   regexp[正则匹配]    concat[连接]   由于某些原因,有时候我们没有按照范式的设计准则而把一些属性放到同一个字符串字段中.比如个人兴趣,有时候我们设计表为 create table members (uid int primary key,uname varchar(20),hobby varchar(100)); 表中内容如下 mysql> select * from members; +-----+-------+--…
JavaScript高级程序设计(第三版)笔记-第五章-RegExp类型 定义正则表达式有两种方式 1.用字面量形式定义正则表达式: ver expression = /patterns/flags; patterns:可以是任何简单或者复杂的正则表达式 flags: g:表示全局 i:表示不区分大小写 m:表示多行模式,在到达一行的末尾时还会继续查找下一行 var patterns1 = /at/g;//匹配字符中所有“at”的实例 var patterns2 = /[bc]at/i;//匹配…
@import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/css/cuteeditor.css); RegExp对象 本文参考MD…
× 目录 [1]对象 [2]实例属性 [3]静态属性[4]实例方法 前面的话 前面已经介绍过javascript中正则表达式的基础语法.javascript的RegExp类表示正则表达式,String和RegExp都定义了方法,使用正则表达式可以进行强大的模式匹配和文本检索与替换.本文将介绍正则表达式的RegExp对象,以及正则表达式涉及到的属性和方法 对象 javascript中的正则表达式用RegExp对象表示,有两种写法:一种是字面量写法:另一种是构造函数写法 Perl写法 正则表达式字面…
之前看别人写的插件经常会用到RegExp对象来验证输入,并且获取一些那时我并不晓得是什么东西的数组,来取值进行自定义的逻辑处理.今天学习了一下RegExp类型.终于有了一个初步的了解,至少不会看一会就感觉蒙圈了,记录分享一下 ECMAScript通过RegExp类型来支持正则表达式 语法如下 var expression = /pattern / flags; 其中 pattern 部分是正则表达式. flags 部分用来标明正则表达式的行为,正则表达式的匹配模式支持一下3种: g:表示全局模式…
$1...$9 属性 (RegExp) (JavaScript) 返回在模式匹配期间找到的,所存储的最近的九个部分.只读. 语法         RegExp.$n 参数     RegExp 始终为全局 RegExp 对象. n 1 至 9 之间的任意整数. 备注     每当产生一个带括号的成功匹配时,$1...$9 属性的值就被修改.可以在一个正则表达式模式中指定任意多个带括号的子匹配,但只能存储最新的九个. 下面的示例执行正则表达式搜索.它显示了全局 RegExp 对象中的匹配项和子匹配…
var str = "1a1b1c";var reg = new RegExp("1(.)", "g");alert(reg.test(str)); // truealert(reg.test(str)); // true/*alert(reg.test(str)); // truedalert(reg.test(str)); // trued */alert(RegExp.$1); /* var reg = new RegExp("1…
一直比较害怕使用正则表达式,貌似很深奥很复杂的样子,所以在用js操作字符串的时候,我最多使用的是replace.split.substring.indexOf等函数,这些函数有时候需要多次叠加使用,但是用起来比较简单,语法和书写格式比较容易记住,所以使用率是相当高的. 今天在操作一段字符串时,需要揪出字符串里的一个数字,虽然用split.substring.indexOf这几个函数的结合使用能实现,但是如果用下正则表达式,则效果好很多,正则表达式的最大作用不就是匹配吗?于是尝试使用正则表达式来编…
RegExp()构造函数带有两个字符串参数,其中第二个是可选的,如果提供第二个参数,它就指定正则表达式的修饰符.第一个函数包含正则表达式的主题部分,也就是正则表达式直接量中两条斜线之间的文本.无论是字符串直接量还是正则表达式,都使用\字符作为转义字符的前缀,因此当给RegExp()传入一个字符串表述的正则表达式时,必须将"\"替换为"\\". 执行匹配模式的方法exec(),它与match()相似,只是RegExp方法的参数是一个字符串,而String方法的参数是一…
1.RegExp 一个用于匹配的模式文本 用0个或多个修饰符描述的匹配模式细节 RegExp对象的创建形式 用内建构造器创建    var re = new RegExp("j.*t") 用文本定义方式  var re = /j.*t/; 2.RegExp对象属性 g==>global:相关搜索在找到第一个匹配位置时是否停止(false默认) i==>ignoreCase:是否忽略大小写 (false默认) m==>multiline:设置是否跨行搜索的选项,默认为f…
正则表达式(RegExp对象)   1.正则表达式字面量,在脚本加载后编译.若你的正则表达式是常量,使用这种方式可以获得更好的性能,重复使用时不会重新编译: 2.使用构造函数创建的RegExp,提供了对正则表达式运行时的编译.主要用于当你知道正则表达式的模式会发生改变时,或者你事先并不了解它的模式或者是从其他地方(比如用户的输入),每次使用都会重新编译:         var myRe = /d(b+)d/g;         var myArray = myRe.exec("cdbbdbsb…
正则表达式作用是匹配方本,将一个模式(正则表达式)与一个文本串进行比较. MySQL用WHERE子句对正则表达式提供了初步的支持,允许你指定用正则表达式过滤SELECT检索出的数据. MySQL仅支持多数正则表达式实现的一个很小的子集. ---------------------- 1.基本字符匹配 REGEXP后所跟的东西作为正则表达式处理. SELECT prod_name FROM products WHERE prod_name REGEXP '1000' ORDER BY prod_n…
JavaScript RegExp 对象 RegExp 对象用于规定在文本中检索的内容. 什么是 RegExp? RegExp 是正则表达式的缩写. 当您检索某个文本时,可以使用一种模式来描述要检索的内容.RegExp 就是这种模式. 简单的模式可以是一个单独的字符. 更复杂的模式包括了更多的字符,并可用于解析.格式检查.替换等等. 您可以规定字符串中的检索位置,以及要检索的字符类型,等等. 定义 RegExp RegExp 对象用于存储检索模式. 通过 new 关键词来定义 RegExp 对象…
前言: 正则表达式(英语:Regular Expression)原属于计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则的字符串.在很多文本编辑器里边,正则表达式通常被用来检索.替换那些符合某个模式的文本.许多程序设计语言都支持利用正则表达式进行字符串操作.例如,Perl,Shell,R,Java等等. 因本人最近刚好在学习R语言进行网页数据抓取,觉得有必要对正则表达式做个小总结,于是便有了此文. 1.重要元字符及其简短描述 元字符 描述 \ 将下一个字符标记为一个…
RegExp 对象用于规定在文本中检索的内容. 什么是 RegExp? RegExp 是正则表达式的缩写. 当您检索某个文本时,可以使用一种模式来描述要检索的内容.RegExp 就是这种模式. 简单的模式可以是一个单独的字符. 更复杂的模式包括了更多的字符,并可用于解析.格式检查.替换等等. 您可以规定字符串中的检索位置,以及要检索的字符类型,等等. 定义 RegExp RegExp 对象用于存储检索模式. 通过 new 关键词来定义 RegExp 对象.以下代码定义了名为 patt1 的 Re…
MySQL模糊查询提供了两种模式:LIKE模式和REGEXP模式. LIKE模式 LIKE模式是使用的LIKE 或 NOT LIKE 比较运算符进行模糊查询. SELECT 字段 FROM 表 WHERE 字段 LIKE[NOT LIKE] '条件' 针对条件,有以下几种通配符: 通配符 含义 % 表示任意一个或多个字符,可匹配任意类型和长度的字符 _ 表示任意单个字符,匹配单个任意字符 ESCAPE 关键字定义转义符.在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符. 示例: #…
1.RegExp类型:  1)什么是正则表达式:RegExp    --是一种规则,模式    --强大的字符串匹配工具    --创建:    --使用RegExp构造函数创建:var re=new RegExp('a','i');    --使用字面量创建:var re=/a/i;    //i--ignore表示忽略大小写 2)正则表达式里面的字符:    1)修饰符      --i:执行对大小写不敏感的匹配.      --g:执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)  …
ECMAScript通过RegExp类型来支持正则表达式. var expression = / pattern / flag ; pattern可以是任意的正则表达式.每个正则都带有标志,用以正则表达式的行为.正则的匹配模式支持三个标志: g:表示全局(global)模式,即模式被应用于所有字符串,而非在发现第一个匹配是立即停止: i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写: m:表示多行(multiline)模式,即在到达一行文本末…
这三个都是RegExp对象下的三个方法,使用方法是一致得. 使用方法:RegExpObject.方法() 方法解析:其实就是根据定义好的正则对象,调用对应的方法. 1.RegExpObject.compile(RegExp,modifier) modifier 规定匹配的类型."g" 用于全局匹配,"i" 用于区分大小写,"gi" 用于全局区分大小写的匹配. compile用于改变和重新编译正则表达式. var str="Every m…
置顶文章:<纯CSS打造银色MacBook Air(完整版)> 上一篇:<关于js的Array.prototype.slice.call> 作者主页:myvin 博主QQ:851399101(点击QQ和博主发起临时会话) span{ color:red; } 写字前面 在正则中,当我们需要匹配两个或多个连续的相同的字符的时候,就需要用到反向引用了,查找连续重复的字符是反向引用最简单却也是最有用的应用之一.所以我们聊一下正则的反向引用. 反向引用的简单理解 正则就是一段字符规则,用来…
参考资料: 1. http://www.w3school.com.cn/js/js_obj_regexp.asp ☂ 知识点: ☞ RegExp是正则表达式的缩写. ☞ RegExp是一种模式,用于在检索文本时描述要检索的内容. ☞ RegExp对象用于存储检索的模式. ☞ 直接量语法: /pattern/attributes ☞ 创建RegExp对象的语法: new RegExp(pattern, attributes); 其中,pattern是一个字符串,指定了正则表达式的模式或其它正则表达…
前言 之前小猪分享过关于正则表达式的一些内容,具体请看传送门,今天小猪来分享怎么在js中使用正则表达式. 定义 ECMAScript通过RegExp类型来支持正则表达式.使用下面类似Perl的语法,就可以创建一个正则表达式. var expression = |pattern |flags; 其中的模式(pattern)部分可以是任何简单或复制的正则表达式,可以包含字符串.限定符.分组.向前查找以及反向引用.每个正则表达式都可带有一或多个标志(flags),用以标明正则表达式的行为. RegEx…
1 regexp ^ 匹配字符串的开始部分 $ 匹配字符串的结束部分 . 匹配任何字符(包括回车和新行) a* 匹配0或多个a字符的任何序列 a+ 匹配1个或多个a字符的任何序列 a? 匹配0个或1个a字符 de|abc 匹配序列de或abc (abc)* 匹配序列adc的0个或者多个实例 {n}.{m,n} {n}或{m,n}符号提供了编写正则表达式的更通用方式,能够匹配模式的很多前述原子(或“部分”).m和n均为整数. a* 可被写为a{0,} a+ 可被写为a{1,} a? 可被写为a{0…
1 语法 1.1 直接量语法 /pattern/attributes 1.2 创建RegExp对象 new RegExp(pattern, attributes) 1.3 说明 pattern是正则表达式,attributes是指修饰符如i,g,m 2 RegExp 对象方法 方法 描述 exec 检索字符串中指定的值.返回找到的值,并确定其位置. test 检索字符串中指定的值.返回 true 或 false.   //语法:RegExpObject.test(string) //说明:tes…
创建正则表达式对象 #以大写字母开始后面紧跟N个数字,方式一 reg = /[A-Z]\d+/ #方式二 reg = Regexp.new("[A-Z]\d+") reg = Regexp.new(/[A-Z]\d+/) 匹配检测:=~,当能够匹配的时候,返回第一次匹配的位置,不能匹配的话返回nil letter_somenum = /[A-Z|a-z]\d+/ if letter_somenum =~ "f1" print "f1 matches reg…
function getCookie(name)//取cookies函数 { //coook中document.cookie = "age=12; name=1.css"; var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)")); if (arr != null) return unescape(arr[2]); return null; } //…
今天在重新阅读<JavaScript权威指南>的RegExp和String的时候,看到了2个比较容易混淆的函数:RegExp的exec和String的match 这2个函数都是从指定的字符串中提取符合条件的字串.他们大部分时候的返回结构是一致的,但是在全局检索时,返回的结果差别会很大1.正则表达式为非全局检索时,2者是等价的 返回符合条件的第一个子串以及对应的分组(如果存在存在)构成的伪数组:第一个元素是匹配的字串,余下的为匹配的分组. 伪数组包含2个属性: input 返回要检索的字符串 i…