以前只会/<abc("<abcdef>\n<abczzz>"),
匹配到<abczzz>,
这种简单的固定写法,但实际使用次数几乎趋近于0。
很多场景不能写死abc,顺理成章的就写成了/<.+("<abcdef>\n<abczzz>"),
咦?咋把前面的匹配到了!从入门到放弃。
昨天(2019-04-07)随手写了一下/<("<abcdef>\n<abczzz>"),
原来是对.+("<abcdefzzz>\n<abczzz>")写法也可以。可能是结尾的.+导致的不能匹配,但这样写还是不行:/<.+("<abcdefzzz>\n<abczzz>")。
正则表达式匹配指定内容后面要或不要包含指定的字符串内容:
"color: #ff0000">前提原则
1.表达式内固定内容的字符串能不写尽量不写,能简写的尽量简化来写(如前面写的abc部分不能写死)
2.可以少量使用前瞻(正向),后瞻(反向)基本不学,学了还要研究那些浏览器支持,不敢用,太多了也学不动。
3.NoJS(Not Only JavaScript);不仅仅是浏览器中的js;不过js的正则/exp/字面量写法简洁到没盆友(哪个语言),函数、对象、字符串统统不需要;不接受反驳。
假设待匹配的文本
htmlRaw=` <div ***="*** ***" class="***" ***="***"> class=" matchX 1" <div ***="*** ***" class="*** matchX ***" ***="*** excludeX ***"> class=" matchX 2" </div> class=" matchX 3" </div> <div ***="*** ***" class="***" ***="***"> class=" matchX 4" <div ***="*** ***" class="*** ***" ***="***"> class=" matchX 5" </div> class=" matchX 6" </div> ...... `; //注: *** 不是固定内容,但不会出现未转义的xml实体、matchX、excludeX //注: class=" matchX 123456"纯文本只做演示干扰之用,不应当作为特征 //如果数据对换行不敏感,应优先转换成没有换行的,大概率可以简化正则逻辑 htmlNoWrap=htmlRaw.replace(/[\r\n]+/g," "); //正则测试代码 (/[\s\S]*/.exec(htmlRaw)||[])[0]
不要单个字符的匹配
匹配出div.matchX标签:<div ***="*** ***" class="*** matchX ***" ***="***">
可以直接使用 [^>]把matchX限定在<> HTML标记内,意思就是<>中的文本不要出现结尾的>字符。
单个字符还算简单:
//有效 /<div[^>]+matchX[^>]+>/.exec(htmlRaw)[0]
如果不限定在<>标记内,可能会匹配出界;并且这种不限定,迟早会出乱子:
//无效 /<div.+"color: #ff0000">不要一个字符串的匹配匹配出第一层不带excludeX文本内容的第一块div,就是返回包含matchX 4的那块div
[^]语法只能排除掉单个字符,不要一个字符串咋办?硬是要写成[^abc],会把a、b、c字符全部排除掉;除了使用前瞻,好像还没有别的简单办法。
使用本文开头的(.("htmlcode">
//有效 /<div[^>]*>[^<]+<div("color: #ff0000">对于.+("htmlcode">/<.+("<abcdef>\n<abczzz>")第一个 .+ 匹配到了 abcde,之后是 f,不是 def,第二个 .+ 匹配 f,符合正则
额外记录
/(\d+)("123.141") 目测是这样的: > 123:\d+贪婪匹配到.为止 > 12:发现 123.1 不符合("123.141") 目测是这样的: > 123.141:.+贪婪匹配到结尾 > 123.141 : 符合("123.141") 目测是这样的: > 1:.匹配到新的一位 > 1:123 符合("color: #ff0000">总结以上所述是小编给大家介绍的正则表达式后面不要包含指定的字符串内容,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
无为清净楼资源网 Design By www.qnjia.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
更新日志
- ABC唱片-鲍比达·新民乐《满江红》[APE+CUE]
- 许嵩.2014-不如吃茶去【海蝶】【WAV+CUE】
- 周笔畅.2024-HAVE.A.GOOD.NIGHT【SN.Music】【FLAC分轨】
- 周笔畅.2024-HAVE.A.NICE.DAY【SN.Music】【FLAC分轨】
- 证声音乐图书馆《真夏派对 x 迪斯可》[FLAC/分轨][380.78MB]
- 证声音乐图书馆《星空下 爵士钢琴》[320K/MP3][65.88MB]
- 证声音乐图书馆《星空下 爵士钢琴》[FLAC/分轨][283.95MB]
- 沙门怀一《竹山听雨HQ》头版限量[低速原抓WAV+CUE]
- 沙门怀一《于喁·壹HQ》头版限量编号[低速原抓WAV+CUE]
- 群星《魅音绝唱》黑胶CD【WAV】
- 腾格尔.2002-四十独白【风潮】【WAV+CUE】
- 陈明真.1992-到哪里找那么好的人【华星】【WAV+CUE】
- 黄凯芹.2012-廿五年3CD【环球】【WAV+CUE】
- 证声音乐图书馆《七夕 爵士情缘》[320K/MP3][64.8MB]
- 证声音乐图书馆《七夕 爵士情缘》[FLAC/分轨][327.79MB]