用new创建正则表达式的字符串注意事项

例子:验证个人身份证的正则表达式创建

var regex = new RegExp("^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|(X|x))$")

这样创建出来的正则表达式变为:

/^[1-9]d{5}[1-9]d{3}((0d)|(1[0-2]))(([0|1|2]d)|3[0-1])d{3}([0-9]|(X|x))$/

d前面都没有了反斜杠,是因为\是字符串里的特殊字符,字符串里需要用两个\才能表示出一个\

正确做法:

var regex = new RegExp("^[1-9]\\d{5}[1-9]\\d{3}((0\\d)|(1[0-2]))(([0|1|2]\\d)|3[0-1])\\d{3}([0-9]|(X|x))$")

这样才能创建出正确的正则表达式

/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|(X|x))$/

时间: 2024-10-05 09:18:19

用new创建正则表达式的字符串注意事项的相关文章

C#利用正则表达式实现字符串搜索---ShinePans

一.字符串搜索 正则表达式由两种基本字符类型组成:原义(正常)文本字符和元字符.元字符组为正则表达式提供了处理能力. 一般表达式语言是一种可以编写搜索表达式的语言.在该语言中,可以把文档中要搜索的文本.转义序列和特定含义的其他字符组合在一起,例如序列表示一个字的开头和结尾(子的边界),如果要表示正在查找的以字符th开头的字,就可以编写一般表达式th(即序列字符界是-t-h).如果要搜索所有以th结尾的字,就可以编写th(序列t-h-字边界).但是,一般表达式要比这复杂得多,例如,可以在搜索

Js用正则表达式验证字符串

js 常用正则表达式表单验证代码 作者: 字体:[增加 减小] 类型:转载 js 常用正则表达式表单验证代码,以后大家就可以直接使用了. 正则表达式使用详解 简介 简单的说,正则表达式是一种可以用于模式匹配和替换的强有力的工具.其作用如下: 测试字符串的某个模式.例如,可以对一个输入字符串进行测试,看在该字符串是否存在一个电话号码模式或一个信用卡号码模式.这称为数据有效性验证. 替换文本.可以在文档中使用一个正则表达式来标识特定文字,然后可以全部将其删除,或者替换为别的文字. 根据模式匹配从字符

C#下利用正则表达式实现字符串搜索功能的方法(转)

关键字:正则表达式.元字符.字符串.匹配: 1.正则表达式简介:正则表达式提供了功能强大.灵活而又高效的方法来处:.NET框架正则表达式并入了其他正则表达式实现的: 2.字符串搜索:正则表达式语言由两种基本字符类型组成:原义(正常:一般表达式语言是一种可以编写搜索表达式的语言: 3..NET框架的正则表达式类:下面通过介绍.NET框架的正则表达式类,熟悉一下: 1.正则表达式简介 正则表达式提供了功能强大.灵活而又高效的方法来处理文本.正则表达式的全面模式匹配表示法可以快速地分析大量的文本以找到

javascript正则表达式和字符串RegExp

这篇文章主要介绍了javascript正则表达式和字符串RegExp and String(一)的相关资料,需要的朋友可以参考下 前言 正则表达式是javascript非常重要和常用的功能,在jquery等大型框架中用的非常频繁,最近抽时间学习了解了相关知识,记录下来与需要的朋友分享. 思维导图: RegExp(正则表达式)的创建方式 可以通过两种方式创建一个RegExp,具体如下: 通过/-./的方式来创建正则表达式(注意: /--/两边是没有单引号或双引号的) 通过RegExp构造方法来创建

C#中利用正则表达式实现字符串搜索

摘要:本文给出了在C#下利用正则表达式实现字符串搜索功能的方法,通过对.NET框架下的正则表达式的研究及实例分析,总结了正则表达式的元字符.规则.选项等.1.正则表达式简介正则表达式提供了功能强大.灵活而又高效的方法来处理文本.正则表达式的全面模式匹配表示法可以快速地分析大量的文本以找到特定的字符模式;提? ⒈嗉⑻婊换蛏境谋咀幼址?或将提取的字符串添加到集合以生成报告.对于处理字符串(例?HTML 处理.日志文件分析和 HTTP 标头分析)的许多应用程序而言,正则表达式是不可缺少的工具..

正则表达式和字符串处理

正则表达式和字符串处理 来源 https://www.cnblogs.com/helloczh/articles/1648029.html 第一章        正则表达式概述 正则表达式(Regular Expression)起源于人类神经系统的研究.正则表达式的定义有以下几种: l         用某种模式去匹配一类字符串的公式,它主要是用来描述字符串匹配的工具. l         描述了一种字符串匹配的模式.可以用来检查字符串是否含有某种子串.将匹配的子串做替换或者从中取出符合某个条件

SQL Server中利用正则表达式替换字符串

原文:SQL Server中利用正则表达式替换字符串 建立正则替换函数,利用了OLE对象,以下是函数代码: --如果存在则删除原有函数 IF OBJECT_ID(N'dbo.RegexReplace') IS NOT NULL DROP FUNCTION dbo.RegexReplace GO --开始创建正则替换函数 CREATE FUNCTION dbo.RegexReplace ( @string VARCHAR(MAX), --被替换的字符串 @pattern VARCHAR(255),

利用char, str2mat, strvcat创建多行字符串数组

用专门函数char , str2mat , strvcat创建多行字符串数组示例. 1.char('str1', 'str2',...) Convert to character array (string)转换成字符串数组,空字符串是有效的. 示例:S1=char('This string array','', 'has two rows.')   S1 = This string array has two rows. 2.str2mat  (新版本中被char替代) Form blank-

iOS开发中的错误整理,启动图片设置了没有效果;单独创建xib需要注意的事项;图片取消系统渲染的快捷方式

一.启动图片设置了没有效果 解决方案:缓存啊!卸了程序重新安装吧!!!!! 二.单独创建xib需要注意的事项 三.图片取消系统渲染的快捷方式