菜鸟提问:正则表达式(重复)用法

问题描述

这段代码: a="The moon is made of cheese" show_regexp(a, /s.*s/) 运行结果是:The<< moon is made of >>cheese 我看这章很迷.*不是匹配任意多个字符那应该直接到字符串尾了啊,为什么实际结果还会再匹配.*后的s呢。

解决方案

因为这种正则表达式使用贪婪匹配策略首先看整个字符串是否匹配,如果没有发现匹配,它去掉字符串的最后一个字符并进行再次尝试。如果还没有发现匹配,那么在去掉最后一个字符。所以先看" moon is made of cheese" 是否匹配/s.*s/发现不行则去掉最后的e,用" moon is made of chees",再试当用" moon is made of "进行匹配的时候,发现正确就返回结果了
解决方案二:
/s[^s]s/

时间: 2024-12-26 18:49:20

菜鸟提问:正则表达式(重复)用法的相关文章

正则表达式常用用法汇总

在没看正文之前,先给大家介绍下正则表达式基本概念: 正则表达式,又称正规表示法.常规表示法.(英语:Regular Expression,在代码中常简写为regex.regexp或RE),计算机科学的一个概念.正则表达式使用单个字符串来描述.匹配一系列符合某个句法规则.在很多文本编辑器里,正则表达式通常被用来检索.替换那些符合某个模式的文本. 正则表达式,有木有人像我一样,学了好几遍却还是很懵圈,学的时候老明白了,学完了忘光了.好吧,其实还是练的不够,所谓温故而知新,可以为师矣,今天就随我来复习

PHP入门教程之正则表达式基本用法实例详解(正则匹配,搜索,分割等)_php技巧

本文实例讲述了PHP正则表达式基本用法.分享给大家供大家参考,具体如下: Demo1.php <?php //尝试着写第一个正则表达式 //第一个参数,表示模式(就是和字符串去比较,匹配) //第二个参数,表示字符串 //如果整个函数模式和字符串比较后匹配了,那么返回真(true)1,否则返回假(false)0 //什么叫匹配,就是一个一个的比较过去 //按照什么规则??按照模式来匹配 //只要模式全部通过,那么就通过 //匹配和相等是两个概念 //因为目前的模式是一个整体,php //所以,字

需求-一条SQL的写法,菜鸟提问

问题描述 一条SQL的写法,菜鸟提问 式样要求从A表里取出所有项目,并且从B,C,D,E 4张表里取出和A表的nodeid相同的device这个字段. 我的想法是用t1 left join (select nodeid ,device from t2 union select nodeid ,device from t3 union select nodeid ,device from t4 union select nodeid ,device from t5) t6 on t1.nodeid

代码-菜鸟提问:关于网站建立的树系统解析

问题描述 菜鸟提问:关于网站建立的树系统解析 菜鸟一名,想请大师概念式系统的描述下网站制作需要的软件(如果知道相同功能的软件最好指出软件之间的不同之处),以及需要学习的代码和代码所实现的功能.谢谢 比如 首选要学习html,它在网页中充当什么角色,实现什么功能,编辑软件常用的是哪些,各自有什么不同之处 其次要学习------ 不胜感激 解决方案 cmcc c++ 解决方案二: 首选要学习 html 它是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言.HTML文件是由HTML命令组成的描

c++-菜鸟提问:用mfc编写简单计算器

问题描述 菜鸟提问:用mfc编写简单计算器 要求:用switch语句,实现加减乘除和小数点,temp表结果,former第一个数,later第二个数,其他常量不限-- 解决方案 MFC简单计算器基于MFC的简单计算器MFC简单计算器 解决方案二: http://zhangzhenzhen2009.blog.163.com/blog/static/18703924720115851146127/ 解决方案三: 操作步骤: 1.启动Visual C++,新建一个Visual C++项目,选用MFC应

java-【菜鸟提问】用百分比范围查询数据

问题描述 [菜鸟提问]用百分比范围查询数据 在jsp页面中需要写一个按照百分比范围查询表中的数据怎么写? ?BUG占比范围:?--? 我这样写行么? 解决方案 看你数据库表的定义,一般是先groupby,取得count sum,再根据总记录数算出百分比 相关文章 java-菜鸟提问,求大神解答 www-菜鸟提问:怎求 求求求求 需求-一条SQL的写法,菜鸟提问 设计-菜鸟提问:怎样建一个企业人事管理系统 用SQL和C++ remove-[菜鸟提问] Java关于Interator的问题 编程-j

设计-菜鸟提问:怎样建一个企业人事管理系统 用SQL和C++

问题描述 菜鸟提问:怎样建一个企业人事管理系统 用SQL和C++ 需建一个企业人事管理系统,因为概念结构设计用E-R图,可以顺便解释下什么是E-R图吗? 解决方案 数据库设计中重要的一环首先就是概念设计,也就是说,要从实际问题出发,排除非本质的东西,抽象出现实的数据结构之客观规律--即画出数据结构图--ER图. E-R方法是"实体-联系方法"(Entity-Relationship Approach)的简称.它是描述现实世界概念结构模型的有效方法.是表示概念模型的一种方式,用矩形表示实

struts1 与struts2 有什么区别 菜鸟提问

问题描述 struts1与struts2有什么区别菜鸟提问 解决方案 解决方案二:两者的区别:Action类:◆Struts1要求Action类继承一个抽象基类.Struts1的一个普遍问题是使用抽象类编程而不是接口.◆Struts2Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能.Struts2提供一个ActionSupport基类去实现常用的接口.Action接口不是必须的,任何有execute标识的POJO对象都可以用作Struts2的Action对

c++ 多态-菜鸟 提问 C++ 多态问题 谁能解释一下结果1???

问题描述 菜鸟 提问 C++ 多态问题 谁能解释一下结果1??? #include class Base{ public : Base(){} Base(bool arg){foo();} virtual void foo(int i=42){cout<<"base "<<i<<endl;} }; class Derived:public Base { public:Derived(){}; Derived(bool arg):Base(arg){f

license生成器制作方法? 要哪些基础呢. 求教各路大侠. --菜鸟提问

问题描述 license生成器制作方法?要哪些基础呢.求教各路大侠.指点指点在下吧.我快疯啦..--菜鸟提问