当以一个字符串为正则表达式时

反斜杠在正则表达式中是转义的,\b,\t,\s等都是有其含义,但是在字符串中

我们不能把它和在正则中完全的一样对待。

比如/\s12\s/这个正则匹配的是开头空白,中间12,后边是空白的字符串,

但是如果写成"\s12\s"就不行了,需要写成"\\s12\\s",

但是"\t12\t" 就等于 /\t12\t/ 就等于 "\\t12\\t",

所以在字符串中最好用双反斜杠,要不很容易会出现问题。

包括\b和\d也是不一样的。说白了,就是字符串的正则和//这个的正则还是有些不一样的

var reg1 = new RegExp("\dls\d");
console.log(reg1);
var reg2 = new RegExp("\bls\b");
console.log(reg2);

//var reg2 = new RegExp("\tls\t");
//console.log(reg2);

/*
var reg1 = new RegExp(/\bls\b/);
var reg2 = new RegExp("\s+ls\s+");
var reg3 = new RegExp("\\s+ls\\s+");
console.log(reg1);
console.log(reg2);
console.log(reg3);
var str = "dfads+lss+dfsa";
alert(reg1.test(str));
alert(reg2.test(str));
alert(reg3.test(str));

var reg4 = new RegExp(/s+lss+/);
console.log(reg4);
var str2 = "dfads+lss+dfsa";
var str3 = "ablsdfsa";
alert(reg4.test(str2));
alert(reg4.test(str3));

var reg5 = new RegExp(/s\+lss\+/);
console.log(reg5);
alert(reg5.test(str2));
alert(reg5.test(str3));
*/

时间: 2025-01-12 08:58:57

当以一个字符串为正则表达式时的相关文章

复习正则表达式时的一个小知识点

复习正则表达式时的一个小知识点     当分组后,若要引用此小组内容可以有两种方式 1:用 ${1} 2:用 \1 两者效果是一样的

zbb20170928 解决springmvc在单纯返回一个字符串对象时所出现的乱码情况

解决springmvc在单纯返回一个字符串对象时所出现的乱码情况 使 用springmvc框架开发了这么长时间,之前都是直接返回jsp页面,乱码情况都是通过配置和手动编解码来解决,但是今天突然返回一段单纯的字符串 时,发现中文乱码情况解决不了了,下面就给各位分享一下如何解决返回字符串时出现的乱码情况(无需实验,直接使用即可). 之前我们都是通过在springmvc的核心配置文件中配置视图解析器来返回指定的页面,将数据通过Model对象渲染页面,最后响应给用户,但是这种方式我们是通过在web.xm

【转】字符串和正则表达式

System.String是一个功能非常强大且用途非常广泛的基类,但它不是.NET中唯一与字符串相关的类,特别是System.Text和System.Text.RegularExpressions命名空间中的类.本文主要介绍内容: 1.创建字符串 2.格式化表达式 3.正则表达式一.System.String类 System.String是一个类,专门用于存储字符串,允许对字符串进行许多操作. 例如: string messsage1 = "Hello"; // return &quo

写一个字符串反转函数,实现字符串倒序。

第一种方法: <script type="text/javascript">var str="abcdeg";function demo(str){var str2="";for(var i=0;i<str.length;i++){str2+=str.charAt(str.length-i-1);} document.write(str+"<br />"+str2)}demo(str);</

C#语言之字符串和正则表达式

本文将完成以下两个目标: 一.创建字符串: 二.正则表达式: 首先,我先来介绍一下System.String类: System.String是一个类,专门用于存储字符串,允许对字符串进行许多操作. 使用运算符重载可以连接字符串: string str1 = "hello"; //return "hello" str1 +=",C#"; //return "hello,C#" string str2 = str1+"!

R5&mdash;字符串处理/正则表达式

R通常被用来进行数值计算比较多,字符串处理相对较少,而且关于字符串的函数也不多,用得多的就是substr.strsplit.paste.regexpr这几个了.实际上R关于字符串处理的功能是非常强大的,因为它甚至可以直接使用Perl的正则表达式,这也是R的一个理念,作为语言就把向量计算做到极致,作为环境,就在各领域都集成最好的.R中有grep系列的函数,可以用最强大的方式处理字符串的所有问题. grep的全称是global search regular expression and print

假如正则从来没来过,我们该如何去匹配一个字符串?

正则表达式其实挺难的,对于新手来说就好比一本天书.很多高端大气上档次的教程啊教材啊博客啊一般都是先列出框框条条,再来细讲,先元字符再量词再分组再反向引用.我估计是国人都受到了国外教材的影响,因为这些东西是他们整出来的.对于他们来说思路是很清晰的.老手还好,勉强能吃透.新手你没个几十遍的功夫,门都找不到在哪里.光那些规则,字母意思啊就够你喝一壶的了,你是忘了看,看了忘.(ps:本文针对javascript正则) 假如我们根本就不知道有正则这玩意儿存在,要去匹配一个字母串我们应该怎么做了?让我们也做

字符串和正则表达式

创建字符串: System.String(string是这个类的别名) System.Text.StringBuilder System.String类: 1,创建字符串 string s = "www.devsiki.com"; 2,获取字符串长度 s.Length(属性) 3,比较字符串是否一样 s=="www.devsiki.com" 4,字符串连接 s="http://"+s; 5,使用类似索引器的语法来取得字符串中的某个字符 strin

js字符串和正则表达式中的match、replace、exec等函数详解

正则并不是经常使用,而正则和字符串之间的函数关系又错综复杂,谁是谁的函数,又是怎么样的一种结果,往往我们是看一遍忘一遍,对此我是头疼不已,感觉自己是个笨蛋^_^. 为了以后不再查文档,特此把常用的函数和功能,简明扼要的罗列在此,以备日后查看: RegExp对象的函数常用的有2个 1.test函数 用法:RegExpObject.test(string) 返回:如果字符串 string 中含有与 RegExpObject 匹配的文本,则返回 true,否则返回 false. 描述:这个方法没有什么