当前位置: 首页 > wzjs >正文

班组安全建设 网站html手机网站开发教程

班组安全建设 网站,html手机网站开发教程,织梦网站怎么建设,前端网课文章目录 心得体会1.懒惰匹配最少字符 .?2.前瞻: 字符串后边 包括/不包括 某个单词/字母2-1.包含某单词: start(?.?hello)2-2.不包含某单词: start(?!.?hello) 心得体会 前情回顾: 【MedusaSTears】正则?不要太简单!—正则表达式个人学习心得总结: 正则说白了是对字符串…

文章目录

  • 心得体会
  • 1.懒惰匹配最少字符 `.+?`
  • 2.前瞻: 字符串后边 包括/不包括 某个单词/字母
    • 2-1.包含某单词: start(?=.+?hello)
    • 2-2.不包含某单词: start(?!.+?hello)

心得体会

前情回顾:
【MedusaSTears】正则?不要太简单!—正则表达式个人学习心得总结:

  1. 正则说白了是对字符串的整理,所以对一个无间隙长串,第一步最主要的就是,【分割】字符串,类似于英语的自然拼读法那种,从业务需求方面,理解并分割字符串
    比如: 邮箱为什么要以@前后分界?谁告诉你的?因为你知道这是默认的,然而这恰恰是容易被忽略的重点
  2. 正确【分割】后,就不难找到关键字符或者关键位置,也就是可能需要replace的地方,这是启动的核心,下手的第一步
  3. 对于不确定的字符串长度,先找到可以确定的或者唯一的部分
  4. 贪婪匹配 vs 懒惰匹配:
    默认情况下,正则表达式使用最长匹配原则(也叫贪婪匹配原则)。
    懒惰匹配: 在量词*、+、?、{n}、{n,}、{n,m}后面加?就是懒惰模式,懒惰对应的就是匹配的尽可能少的情况。
  5. 注意 ? * + {1,32} 这些量词实际上包括本身
  6. 注意 . 不包括\n \r
  7. 注意 . 是任意单个字符, [] 是指定中括号内的字符
  8. ?:是忽略分组,也就是说括号内的内容不是一个group,包括在实际匹配,用处是 取值的时候忽略这个组合


需求: 查找指定字符串 之前/之后 的str, 且不包括条件里面的字符串
举例: 想要 <title>hello world</title> 标签里面的内容
答案: (?<=\<[tT][iI][tI][lL][eE]>).*?(?=</[tT][iI][tI][lL][eE]>)
解析: 如果跟位序有关,则务必用 前瞻(Lookahead) ?= 或者 后顾(Lookbehind) ?<=
后顾性能损耗比较大,js只支持前瞻(知乎上看到的,具体原因不详)
本题是 查找指定字符串<title>之后和</title>之前的内容

前瞻分两种:一种是正向前瞻 positive lookahead(?=xxx) 其后必须存在的内容,是一个条件,不是实际匹配中的内容
另一种是负向前瞻 negative lookahead(?!xxx)
?=</[tT][iI][tI][lL][eE]> 是前瞻, 也就是计算机从左到右读取第n位字符的时候,n右侧的都是?=

1.懒惰匹配最少字符 .+?

  1. 注意 . 不包括\n \r
  2. 注意 . 是任意单个字符, [] 是指定中括号内的字符


+是至少出现1次 .+的意思:至少1个字符
比如: hello.+friend返回的结果是: 字符串中 命中 hello开头,friend结尾的最长字符串,但是 hellofriend 中间,必须至少有一个字符,不存在 hellofriend这种情况

?则代表懒惰匹配,将.+匹配长度最小化
比如:字符串hellomyfriendweareallfriends,
如果用hello.+friend匹配就是不包括最后s的整个字符串hellomyfriendweareallfriend;
如果用hello.+?friend匹配,结果就是命中第一个friend就停止的 hellomyfriend

那么问题来了: .*?又表示什么意思呢?

2.前瞻: 字符串后边 包括/不包括 某个单词/字母

这里之所以 配合 .+? 进行查询条件,是因为括号中的条件,和前面的字符串并不是相邻的,中间隔着至少1个字符及以上

2-1.包含某单词: start(?=.+?hello)

查找start单词,并且后边要包括hello这个单词
实际应用:
定位日志中,Instagram的category是call的:
instagram(?=.+?category=call)

2-2.不包含某单词: start(?!.+?hello)

参考资料: 正则表达式:不包含某个单词

查找start单词,但是后边不包括hello这个单词
实际应用:
定位日志中,Instagram的category≠call的:
instagram(?!.+?category=call)

注意:输出结果只是括号前的东西,括号里的只是if条件

http://www.dtcms.com/wzjs/833150.html

相关文章:

  • 电子商务网站建设书籍织梦 网站教程
  • 网站开发工程师职业定位包装公司网站模板
  • 网站制作_做网站_耐思智慧大连万词推广
  • 网站开发语言查看wordpress 新建栏目
  • 最有名的免费建站平台排行榜深圳 网站建设公司
  • 在网站文字上做笔记数字中国建设峰会网站
  • 宿州银行网站建设计算机选什么专业最好
  • 扬州集团网站建设设计素材网站大全网站
  • 简答题网站建设的主要内容展厅多媒体
  • 集宁网站建设SEO优化wordpress默认页面设置方法
  • 百度不收录网站描述网站中的给我留言怎么做
  • 深圳网站开发一薇天水模板型网站建设
  • 谁做彩票网站代理wordpress 修改文章作者
  • 手机网站 o2o西安网站建设xazxcy
  • 专做茶叶的网站有没有专门做中考卷子的网站
  • 江宁营销型网站建设安徽省建设监理有限公司网站
  • 上海p2p网站建设cida室内设计师资格证
  • 网站设置在哪里找农产品现货交易平台
  • 推广app的软文案例宁波谷歌seo推广
  • 做微秀的网站自动写论文神器app
  • 网站开发技术可行性为公司建设网络强国
  • 捷讯官网 网站建设中国3大做外贸的网站
  • 数字镭网站开发wordpress新建网站后台无法登陆
  • 网站限定域名辽宁建设工程信息网执业人员
  • 做网站的入门书籍织梦网站首页
  • 深圳设计网站速成班运维是做什么的
  • 做电商网站一般要多少钱深圳网站制作作
  • 学生空间建设网站医疗网站整站优化思路
  • asp.net 音乐网站开发教育类网站设计
  • 什么网站做专利检索报告贵州建网站的公司