javascript正则表达式(语法以及正则表达式修饰符)

正则表达式(英语:Regular Expression,在代码中常简写为regex、regexp或RE)使用单个字符串来描述、匹配一系列符合某个句法规则的字符串搜索模式。

搜索模式可用于文本搜索和文本替换。 作用:数据校验。

正则表达式是由一个字符序列形成的搜索模式。

当你在文本中搜索数据时,你可以用搜索模式来描述你要查询的内容。

正则表达式可以是一个简单的字符,或一个更复杂的模式。

正则表达式可用于所有文本搜索和文本替换的操作。

/move/i 是一个正则表达式。

move 是一个正则表达式主体 (用于检索)。

i 是一个修饰符 (搜索不区分大小写)。

正则表达式是一种验证规则,是以对象的形式存在的

ECMAScript的RegExp类表示正则表达式

1.通过构造函数创建

reg=new RegExp(“正则表达式”,”模式修正符”)

var reg = new RegExp("daili");

var stat = reg.test("dailifang");

alert(stat);

var reg = new RegExp('move','i');
				
				var str = 'move to right';
				// 正则对象.test(str)
				// –返回一个布尔值,它指出在被查找的字符串中是否存在符合正则规则要求的内容。
				// 使用正则对象
				var r = reg.test(str);
				console.log(r);

2.通过字面量方式创建

var reg = /daili/i;

var stat = reg.test("dailifang");

alert(stat);

	var reg = /move/i;
				var str = 'move ti right';
				var r = reg.test(str);
				console.log(r);

 以上预览效果

 

通常将正则表达式字符串放在 /RegExp/ 中间//称为定界符

使用 test()

正则对象.test(str)

–返回一个布尔值,它指出在被查找的字符串中是否存在符合正则规则要求的内容。

test() 方法是一个正则表达式方法。

test() 方法用于检测一个字符串是否匹配某个模式,如果字符串中含有匹配的文本,则返回 true,否则返回 false。

// 正则对象中的常用方法
				// reg.test()
				// 正则对象.test(str)
				// –返回一个布尔值,它指出在被查找的字符串中是否存在符合正则规则要求的内容。
				
				// reg.exec()
				// 正则对象.exec(str)
				// 如果 检索 字符串中有匹配的值返回该匹配值,否则返回null
				
				// 在字符串中全局搜索"hello"
				var str = 'Hello world;hello jerry;Hello lili';
				
				var reg = /Hello/g;
				// g  全局匹配
				
				
				var r = reg.exec(str);//如果检索到的内容存储,exec()它会把检索到的内容  返回出来
				console.log(r);

预览效果

 

exec方法

用正则去匹配字符串,成功返回数组,失败返回null

返回的数组包含特殊属性:

var re= reg.exec(str);

str -被匹配的字符串

匹配返回数组中的index 表示 -子符串位置(这个正则出现在字符串里的首次位置)

你检索的内容它在字符串中的位置

如果采用g修饰符

如果设置了g,那么exec执行之后会更新正则表达式的lastIndex属性,表示本次匹配后,所匹配字符串的下一个字符的索引,下一次再用这个正则表达式匹配字符串的时候就会从上次的lastIndex属性开始匹配。

i  执行对大小写不敏感的匹配。

g   执行全局匹配(查找所有匹配而非在找到第一个匹配后停止)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
JavaScript正则表达式和Java正则表达式语法上有一些差异,但是它们的基本概念和用法是相似的。下面是将JavaScript正则表达式转换为Java正则表达式的一些常见规则: 1. 语法差异: - JavaScript正则表达式使用斜杠(/)作为定界符,而Java正则表达式使用双引号(")作为定界符。 - JavaScript正则表达式中的特殊字符需要进行转义,而Java正则表达式中的特殊字符不需要转义。 2. 字符类: - JavaScript正则表达式中的字符类使用方括号([])表示,而Java正则表达式中使用方括号([])或者Unicode转义(\p{...})表示。 - JavaScript正则表达式中的字符类可以使用连字符(-)表示范围,而Java正则表达式中需要使用Unicode转义(\uXXXX)表示范围。 3. 量词: - JavaScript正则表达式中的量词使用花括号({})表示,而Java正则表达式中使用花括号({})或者问号(?)表示。 - JavaScript正则表达式中的贪婪量词默认是贪婪模式,而Java正则表达式中的贪婪量词需要在后面添加问号(?)来表示非贪婪模式。 4. 边界匹配: - JavaScript正则表达式中的边界匹配使用插入符号(^)和美元符号($)表示,而Java正则表达式中使用\A和\Z表示。 5. 其他差异: - JavaScript正则表达式中的捕获组使用圆括号(())表示,而Java正则表达式中使用圆括号(())或者方括号([])表示。 - JavaScript正则表达式中的反向引用使用反斜杠加数字(\1、\2等)表示,而Java正则表达式中使用美元符号加数字($1、$2等)表示。 以上是一些常见的JavaScript正则表达式转换为Java正则表达式的规则。具体转换时,还需要根据具体的正则表达式进行适当的调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值