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

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 boundary. That is, match the position between a \w character and a \W character or between a \w character and the beginning or end of a string. (Note, however, that [\b] matches backspace.)

\B: Match a position that is not a word boundary.

还有的就是使用正则表达式来确定要匹配的位置,也叫做Zero-Width Test(零宽断言)

(?=p) :

p

(?!p) :

A negative lookahead assertion. Require that the following characters do not match the pattern p.

对于(?=p)和(?!p)的使用举一个例子:

要在url(skins/default/images/index/default.png)中匹配"/default/"中的"default",而不匹配"/default.png"中的"default"?

正则表达式: (?!\/)default(?=\/)

其中(?!\/)表示以"/"开头,(?=\/)表示以"/"结尾

时间: 2024-10-30 06:30:57

JS 正则表达式的位置匹配ZZ的相关文章

JS正则表达式的分组匹配

什么是分组 通俗来说,我理解的分组就是在正则表达式中用()包起来的内容代表了一个分组,像这样的: var reg = /(\d{2})/ reg.test('12'); //true 这里reg中的(/d{2})就表示一个分组,匹配两位数字 分组内容的的形式 一个分组中可以像上面这样有一个具体的表达式,这样可以优雅地表达一个重复的字符串 /hahaha/ /(ha){3}/ 这两个表达式是等效的,但有了分组之后可以更急简洁. 体格分组中还可以有多个候选表达式,例如 var reg = /I co

js正则表达式验证、匹配数字、匹配字符串、匹配中文、匹配任意字符备忘录

本文转自:91博客 :原文地址:http://www.9191boke.com/235792704.html 正则表达式或“regex”用于匹配字符串的各个部分,下面是我创建正则表达式的备忘录.包括一些常用的验证.匹配数字.匹配字符串.匹配中文.匹配任意字符串. 匹配正则 使用 .test() 方法 let testString = "My test string"; let testRegex = /string/; testRegex.test(testString); 匹配多个模

js正则表达式之人民币匹配

人民币格式匹配 小写格式:¥ 符号 和 整数值 与小数3部分组成. (0)代码与运行结果 { // 匹配人民币 let [reg, info, rmb, result] = [ /^(¥)(-?[0-9,]+)(\.[0-9]+)?/, ['金额','符号', '整数部分', '小数分部'], ['¥10.01', '¥10', '¥1,111.01', '¥1,000,12', '¥0.1', '¥10.00'] ]; rmb.forEach((value) => { console.log(

js正则表达式 URL格式匹配详解

0.URL格式 protocol :// hostname[:port] / path / [;parameters][?query]#fragment [;parameters]没见过 这里就不做相关匹配了 1.代码及运行结果 'use strict'; { // URL地址匹配格式: protocol :// hostname[:port] / path / [;parameters][?query]#fragment // [;parameters]:这都没见过这东西,就不匹配了. let

JS 正则表达式否定匹配(正向前瞻)

引言:JS 正则表达式是 JS 学习过程中的一大难点,繁杂的匹配模式足以让人头大,不过其复杂性和其学习难度也赋予了它强大的功能.文章从 JS 正则表达式的正向前瞻说起,实现否定匹配的案例.本文适合有一定 JS 正则表达式基础的同学,如果对正则表达式并不了解,还需先学习基础再来观摩这门否定大法. 一.标签过滤需求 不知道大家在写JS有没有遇到过这样的情况,当你要处理一串字符串时,需要写一个正则表达式来匹配当中不是 XXX 的文本内容.听起来好像略有些奇怪,匹配不是 XXX 的内容,不是 XXX 我

js正则表达式如何匹配注释

js正则表达式如何匹配注释:有时候需要匹配注释代码,关于具体用法这里就不多介绍了,直接给出代码: var reg=/(\/\*[\w\'\s\r\n\*]*\*\/)|(\/\/[\w\s\']*)|(\<![\-\-\s\w\>\/]*\>)/ 以上正则表达式可以匹配多行或者单行javascript代码注释,直接套用就可以了. 原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=10696 更多内容可以参阅:htt

正则表达式(四)——位置匹配(环视、单词分界符、锚点)

这次的内容是有关于正则表达式中的位置匹配,它包含的内容有两部分,一部分是较为简单的锚点和单词分界符,一部分是较为复杂的零宽断言.复杂有复杂的好处,写起来复杂,能匹配的位置也就越复杂.零宽断言又可以叫做环视.这一部分是重点内容. 锚点 标准的锚点有这么几个,它们是^,$.在普遍的,不涉及任何模式的情况下,脱字符(^)匹配的是文本的起始位置.而$匹配的则是文本末尾的换行符\n之前的位置.举个例子 正则表达式:s$ 上面这个正则表达式的意思就是匹配以字符[s]结尾的行,即[······s/n]这样的字

正则表达式--位置匹配和组

1. 位置匹配 正则中的匹配有两种,一种是匹配具体的字符,另一种是匹配特定的位置 ^    匹配文本开始位置 $    匹配文本结束位置 \b   匹配单词边界(单词开始位置或结束位置) 校验操作时,是否使用 ^和$ 对校验操作没有影响 获取.替换等操作时,一般不使用 ^和$ String regex = "\\bhello\\b"; String str = "xx hello,hello helloa "; Pattern pattern = Pattern.c

js 正则表达式匹配

整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$只能输入数字:"^[0-9]*$".只能输入n位的数字:"^\d{n}$".只能输入至少n位的数字:"^\d{n,}$".只能输入m~n位的数字:."^\d{m,n}$"只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$".只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$".只能输入有1~