`

正则表达式只某个字符连续出现的次数

 
阅读更多
存在一个文件user.txt,内容如下:

     1 fafdasfdasfd
     2 fdasfdasfdsaf
     3 aooooob5
     4 aooooooob7
     5 aoooooooob8
     6 aooooooooob9
     7 aoooooooooob10
     8 aooooooooooob11
     9 aooo1oooob

字符的重复出现次数:
x\{n\}     ----x字符出现n次
x\{n,\}    ----x字符至少出现n次
x\{n,m\}   ----x字符出现n-m次(n<=m)

但是通过实践,grep 'o\{7\}' user.txt 会返回 4,5,6,7,8 这几行;
grep 'o\{7,9\}' user.txt 会返回 4,5,6,7,8 这几行;

如何才能返回只包含n个连续的x呢?
正确的表达式应为:grep '[^x]x\{n\}[^x]' user.txt
例如: grep '[^o]o\{7\}[^o]' user.txt

如何才能返回只包含n-m个连续的x呢?
正确的表达式应为:grep '[^x]x\{n,m\}[^x]' user.txt
例如: grep '[^o]o\{7,9\}[^o]' user.txt



-------完毕,欢迎大伙来拍砖,一起交流。
分享到:
评论

相关推荐

    PHP用正则表达式过滤超链接

    正则表达式是一种用于匹配字符串中字符组合的强大工具。在PHP中,正则表达式的应用非常广泛,特别是在处理HTML或XML等结构化文档时。下面是一些常用的正则表达式语法: - `.`:匹配任意单个字符(除了换行符)。 - ...

    正则表达式.rar

    - 使用正则表达式可以编写代码统计程序,例如计算源码文件中的单词数量、行数或特定关键字出现次数。 7. **抓取网页中的email地址** - 正则表达式非常适合从HTML文本中提取电子邮件地址,通过定义符合电子邮件...

    正则表达式 电子书 教程 chm

    正则表达式是一种强大的文本处理工具,用于在字符串中匹配、查找、替换或提取特定模式。它是编程语言中不可或缺的一部分,适用于数据验证、文本搜索和替换等任务。本教程是专为初学者设计的,旨在提供一个简单易懂的...

    JAVA正则表达式 从入门到进阶

    4. **表示匹配次数的符号**:如大括号{},它可以指定某个字符或字符集重复的次数。例如,"a{3}"匹配连续的三个"a"字符。 5. **转义字符**(\):用于取消特殊字符的特殊含义,如"\-"用于匹配连字符本身而不是表示...

    正则表达式30分钟入门教程

    若要排除某个字符,可以使用`[^...]`,如`[^abc]`匹配除'a'、'b'、'c'之外的任何字符。 三、量词 3. 量词:用来指定前面字符出现的次数。`*`表示0次或无限次,`+`表示1次或无限次,`?`表示0次或1次,`{n}`表示精确...

    正则表达式

    正则表达式在匹配时,是从字符串的某个位置开始,一个子表达式匹配成功后,下一个子表达式从该结束位置继续匹配,这个过程称为控制权和传动。 正则表达式包含多种元素,如字符与字符集、元字符、限定符、分组、反向...

    正则表达式工具

    正则表达式是一种强大的文本处理工具,用于匹配、查找、替换和分析字符串。在编程、数据分析、文本挖掘等领域,正则表达式起着至关重要的作用。"正则表达式工具"通常指的是那些辅助用户测试、调试和理解正则表达式的...

    正则表达式快速入门(案例讲解)

    - **元字符**:正则表达式中具有特殊含义的字符,如`.`、`*`等。 - **转义字符**:当需要匹配某些特殊字符时,需要用`\`对其进行转义处理。 - **量词**:用于规定模式中的某些部分重复的次数,如`*`代表“0次或多次...

    正则表达式使用详解很好的

    在正则表达式中,通过特定的字符或字符组合来定义一个搜索模式,用于匹配字符串中的某些部分。 **1. 字符与字符类** - **普通字符**:代表自身。 - **特殊字符**:具有特殊含义的字符,例如`*`、`+`、`.`等。 - **...

    正则表达式实例_RegExp

    正则表达式(Regular Expression,简称Regex)是用于匹配字符串的一种模式,广泛应用于文本处理、数据验证、搜索和替换等场景。它通过一种特殊的语法来定义一个规则,这个规则可以用来判断一个字符串是否符合特定的...

    易语言正则表达式模块应用

    "和"{n,m}",用于指定某个字符或子模式出现的次数。例如,"."后面跟一个"*"表示匹配任意数量的任何字符,而"\d{3}"则匹配连续的三位数字。 5. **断言**:断言如"^"(行首)、"$"(行尾)、"\b"(单词边界)等,用于...

    如何正确写正则表达式

    正则表达式(Regular Expression),简称“regex”或“regexp”,是一种在计算机科学中的对象,用于描述字符串集合的一种强大工具。它由一系列字符和特殊符号组成,用于匹配字符串中特定的模式。正则表达式的灵活性...

    正则表达式简介.pdf

    然而,在实际应用中,我们往往需要匹配更复杂的模式,比如以某个字符开头的所有单词,这就需要用到更高级的元素。 - **限定符**:限定符是用来控制模式中字符或字符集重复次数的特殊符号。常见的限定符包括: - `...

    正则表达式测试工具

    1. **基本元素**:正则表达式由一系列基础字符组成,包括字母、数字、特殊字符等。例如,"."匹配任何单个字符,"\d"匹配数字,"\w"匹配字母、数字或下划线。 2. **量词**:量词用来指定一个模式重复的次数。"+"表示...

    正则表达式的原理和实践

    正则表达式是一种强大的文本处理工具,用于匹配、查找、替换和验证字符串是否符合特定模式。它是基于一种称为正则理论的数学概念,主要利用非确定有穷自动机(NDFA)和确定性有限状态机(DFA)来实现。 在正则...

    正则表达式快速教程

    1. **限定符**:用于指定某个模式出现的次数。 - `{n}`:前面的元素必须出现恰好`n`次。 - `{n,}`:前面的元素至少出现`n`次。 - `{n,m}`:前面的元素至少出现`n`次,最多出现`m`次。 - `+`:相当于`{1,}`,前面...

    JS正则表达式大全【2】

    JavaScript中的正则表达式是处理字符串的强大工具,用于执行模式匹配、查找和替换等功能。在JavaScript中,正则表达式可以使用两种方式创建:直接量(即斜杠包围的模式,如`/s$/`)或通过`RegExp`构造函数(如`new ...

Global site tag (gtag.js) - Google Analytics