首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

linux 正则表达式匹配不包含某些字符串技巧

经常我们会遇到想找出不包含某个字符串文本,程序员最容易想到是在正则表达式里使用,^(hede)来过滤”hede”字串,但这种写法是错误。...我们可以这样写:[^hede],但这样正则表达式完全是另外一个意思,它意思是字符串里不能包含‘h',‘e',‘d'三个但字符。那什么样正则表达式能过滤出不包含完整“hello”字串信息呢?....)*$ 上面这个表达式就能过滤出不包含‘hede'字串信息。我上面也说了,这种写法并不是正则表达式“擅长”用法,但它是可以这样用。 解释 一个字符串是由n个字符组成。...你可以理解,正则表达式((?!hede).)*匹配字符串"ABhedeCD"结果false,因为在e3位置,(?!hede)匹配不合格,它之前有"hede"字符串,也就是包含了指定字符串。...在正则表达式里, ?! 是否定式向前查找,它帮我们解决了字符串“不包含”匹配问题。

8.3K30
您找到你想要的搜索结果了吗?
是的
没有找到

js正则表达式校验金额-正则表达式排除指定字符串

,而是在字符串中间这样就给匹配带来了麻烦,在正则表达式中没有提供类似排除功能。...我们最容易想到就是下面的正则:   ^3+$ 这种写法看起来是那么回事,但是排除型字符组排除是i和f两个字符,而不是if这个字符串,所以这个正则表达式匹配是那些既没有i字符也不包含f字符字符串。...if)匹配是一个位置,所以对于字符串aifb他也是可以匹配到,而实际上这样字符正是我们不要。按照这个正则表达式,对于aifb 首先匹配行首,其次....其实这个问题解答是不完美的,对于排除字符串if只有2个字符i和f字符,我们可以使用这种方式,但是如果我们要排除字符串,这种方法显然就不实用了,那要考虑到多少种情况呢?   ...排除不含有某字符串最终方案:在这种情况下我们使用 ^(?!.).$ 正则表达式 我们将第一个.移到了零宽度断言里面。

2K50

Perl正则表达式:文本处理

⑵拆分模式 split是拆分模式正则表达式,会根据模式匹配结果拆分字符串,其第一个参数为正则表达式,第二个参数为要拆分字符串,返回值为拆分后字符串列表,假如有空子字符串,默认开头和中间会被保留...和{3}这样量词不同,*和+是贪婪量词,也即在正则表达式中间遇到这两个量词时会首先匹配尽量多字符,然后再匹配后面的部分,如果后面的不匹配,正则表达式则会以每次吐出一个字符方式来进行匹配,直至剩余最少字符数...则变为非贪婪量词,也即在正则表达式中间遇到这两个量词时会首先匹配尽量少字符(*?零个开始,+?...一个开始),并匹配后面的部分,后面部分不匹配时,正则表达式则会以每次吞一个字符方式来进行匹配,直至匹配最多字符,这两种量词效率因中间字符串多少而各有优势。...Perl命令行选项可以很便捷实现某些功能,如下所示: 对于前面更新文件脚本,可以简单使用下面命令来执行: perl -i.bak -pe 's/^Author:.

4.7K10

正则表达式介绍与使用

[TOC] 0x00 前言介绍 正则表达式(Regular Expression)描述字符串结构模式形式化表达方法,正则(Regex)表达式处理对象字符串或者抽象地说是一个对象序列(计算机体系本质数据结构...安全拦截: 比如XSS,SQL注入以及playload-POC测试验证字符串匹配拦截,常常出现在云waf和传统web网站防火墙WAF中; 例如,您可能需要搜索整个网站,删除过时材料以及替换某些 HTML...模式描述在搜索文本时要匹配一个或多个字符串正则表达式作为一个模板,将某个字符模式与所搜索字符串进行匹配。...xtended RegEx 简称 EREs) Perl正则表达式Perl Regular Expression 又叫 Perl RegEx 简称 PREs) 正则表达式详解 正则表达式基础组成部分...,以及尝试匹配次数上线,对某些量词来说下线是0而某些量词上限是无穷大; 由星号和问号限定对象在 “匹配成功” 时可能并没有匹配任何字符,即使什么字符都不能匹配到,它任然会报告 “匹配成功” 特殊元字符

1.1K20

【4】通过简化正则表达式处理字符串

阅读目录 常见字符串操作 使用正则表达式处理字符串 “前后限定”查找目标 自动处理转义字符 界定串通用化 多个目标的匹配 进一步扩展 结论 在各类应用软件开发中,字符串操作是最常见操作之一...因此,本文主要尝试按照正常解决思路,逐步找到简化这类处理方案。 使用正则表达式处理字符串 如果使用C#自身字符串功能来进行处理,效率较为低下。要高效地处理字符串正则表达式是首选。...正则表达式使用单个字符串来描述、匹配一系列符合某个句法规则字符串,它特点是: 1. 灵活性、逻辑性和功能性非常强; 2. 可以迅速地用极简单方式达到字符串复杂控制。 3....因此,我简化原则是: 1)保持正则表达式基本处理流程 2)对正则表达式模式串进行简化 因此,可以通过一个函数,通过给出前后字符串来构造一个正则表达式模式串。...但由于其规则复杂,不便于在常规情况下快速运用。本文提出了一套简化规则,屏蔽了正则表达式细节,降低了正则表达式使用难度: 规则1:通过指定前后定界字符串,自动生成需要正则表达式

1.4K60

正则表达式介绍与使用

[TOC] 0x00 前言介绍 正则表达式(Regular Expression)描述字符串结构模式形式化表达方法,正则(Regex)表达式处理对象字符串或者抽象地说是一个对象序列(计算机体系本质数据结构...安全拦截: 比如XSS,SQL注入以及playload-POC测试验证字符串匹配拦截,常常出现在云waf和传统web网站防火墙WAF中; 例如,您可能需要搜索整个网站,删除过时材料以及替换某些 HTML...模式描述在搜索文本时要匹配一个或多个字符串正则表达式作为一个模板,将某个字符模式与所搜索字符串进行匹配。...RegEx 简称EREs) Perl正则表达式Perl Regular Expression 又叫Perl RegEx 简称PREs) ?...,以及尝试匹配次数上线,对某些量词来说下线是0而某些量词上限是无穷大; 由星号和问号限定对象在 “匹配成功” 时可能并没有匹配任何字符,即使什么字符都不能匹配到,它任然会报告 “匹配成功” 特殊元字符

99610

【说站】Python正则表达式字符串组成

Python正则表达式字符串组成 说起正则表达式,对于已经学习了一段时间小伙伴来说,会频繁使用到。本篇我们需要对正则表达式字符串组成部分,进行知识了解。...1、正则表达式字符串是由普通字符和元字符组成。 2、普通字符是按照字符字面意义表示字符。元字符是预先定义好一些特定字符。...实例 import re   #字符串1 regx_string='aab'   #字符串2 regx_string2='anb'   #生成一个匹配正则表达式对象 pattern=re.compile...('a.b')   #匹配字符串1 m1=pattern.match(regx_string)   print(m1) #    #字符串3 regx_string3='and'   m3=pattern.match(regx_string3)   print(m3) # None 以上就是Python正则表达式字符串组成

26720

序列比对(22)中间字符串分支定界方法中更紧

前文介绍了中间字符串算法和代码,但是使用分支定界策略时所使用界限是很宽松。本文给出了一个更紧界限。...对分支定界法简单回顾 前文《序列比对(21)中间字符串问题算法及实现代码》介绍了中间字符串算法和代码,但是使用分支定界策略时所使用界限是很宽松。分支定界法伪代码如下: ?...*/ void findMedianStr(Seq* mulSeq, const int t, const int l); /* 寻找中间字符串 */ int main(void...printf("time spent: %s\n", tstr); free(tstr); return 0; } char* sec2time(time_t t) { /* 将秒数转化为时间字符串...} } return minDist; } void findMedianStr(Seq* mulSeq, const int t, const int l) { /* 寻找中间字符串

1K30

序列比对(21)中间字符串问题算法及实现代码

前文介绍了基序发现问题和中间字符串问题。本文给出了中间字符串算法和实现代码。 中间字符串问题简单算法及伪代码 《序列比对(20)基序发现问题算法及实现代码》给出了基序问题算法和实现代码。...: (只要对基序发现问题和中间字符串问题简单算法运行时间做简单分析) ?...为identity.txt文件中7条序列计算中间字符串 ? 为mutated.txt文件中7条序列计算中间字符串 分支定界法结果如下: ?...为identity.txt文件中7条序列计算中间字符串 ? 为mutated.txt文件中7条序列计算中间字符串 具体代码 上文及前文都假定多条序列长度是一样,但是实际情况并不总是如此。...代码实现过程中考虑到这一点,做了改进,使得多条序列长度不一致情况下也可以用此代码来计算中间字符串

90320

Python字符串正则表达式深入学习

学习笔记(7)-Python基础7-字符串正则表达式" str_name_1 = str_name[0] # 截取第一个字符 str_name_2 = str_name[0:6] # 从第一个字符开始到第六个...") 0-9,和"\d"一样,0-9任意一个数字 a-z0-9A-Z,等同于"\w" 2.5 排除字符 " ^ "表示行开始,如果放在 中表示排除 如a-zA-Z表示匹配一个不是字母字符 2.6 选择字符...'[^a-zA-Z]' # 匹配不是字母一个字符 '\\bj\\w*\\b' # 匹配以字母j开头字符,要把\进行转义 # 或者写成r或R开头,r'\bj\w*\b' 3 使用re模块实现正则表达式...None 语法:re.search(pattern,s,flags) 说明: pattern:模式字符串 s:要匹配字符串 flags:可选,控制匹配方式 3.1.3 findall()方法 用于再整个字符串中搜索所有符合正则表达式字符串...文章中编号为:98765432文章,暗码为123456789 3.3 正则表达式分割字符串 语法:re.spilt(pattern, s, maxsplit, flags) 说明: pattern:

95360

PHP正则表达式模式修正符

PHP在处理正则表达式时候,在最后面可以加上诸如/i, /is, /s, /isU选项,他们都代表什么含义呢? 其实他们是PHP正则表达式模式修正符,用于对正则表达式补充。...“行起始”元字符(^)仅仅匹配字符串起始,“行结束”元字符()仅仅匹配字符串结束,或者最后一个字符是换行符时其前面(除非设定了 D 修正符)。这和 Perl 是一样。...当设定了此修正符,“行起始”和“行结束”除了匹配整个字符串开头和结束外,还分别匹配其中换行符之后和之前。这和 Perl /m 修正符是等效。...默认不能表示换行符号,将字符串视为单行。如果设定了此修正符,模式中圆点元字符(.)匹配所有的字符,包括换行符。没有此设定的话,则不包括换行符。这和 Perl /s 修正符是等效。...排除字符类例如 1 总是匹配换行符,无论是否设定了此修正符。 x (PCRE_EXTENDED) 忽略正则中空白。

1.5K20

linux中grep如何排除过滤输出总结

grep 是一种强大命令行工具,用于在一个或多个输入文件中搜索与正则表达式匹配行并将每个匹配行写入标准输出。...以下示例打印不包含字符串nologin或bash 行: > grep -wv 'nologin\|bash' /etc/passwd GNUgrep支持三种正则表达式语法,Basic、Extended...和 Perl-compatible。...如果要使用选项-E扩展正则表达式,则|不应转义运算符,如下所示: > grep -Ewv 'nologin|bash' /etc/passwd 你可以指定不同可能匹配项,这些匹配项可以是文字字符串或表达式集...这是一个示例,显示如何rumenz在内所有文件中搜索字符串/etc,不包括/etc/pki目录: > grep -R --exclude-dir=pki rumenz /etc 要排除多个目录,请将排除目录括在大括号中

2.6K00

linux中grep如何排除过滤输出总结

grep 是一种强大命令行工具,用于在一个或多个输入文件中搜索与正则表达式匹配行并将每个匹配行写入标准输出。...以下示例打印不包含字符串nologin或bash 行: > grep -wv 'nologin\|bash' /etc/passwd GNUgrep支持三种正则表达式语法,Basic、Extended...和 Perl-compatible。...如果要使用选项-E扩展正则表达式,则|不应转义运算符,如下所示: > grep -Ewv 'nologin|bash' /etc/passwd 你可以指定不同可能匹配项,这些匹配项可以是文字字符串或表达式集...在以下示例中,字符串games出现在行首行被排除在外: > grep -v "^games" file.txt 命令输出可以grep通过管道过滤,只有匹配给定模式行才会打印在终端上。

2.1K20

刨根究底正则表达式之一——正则表达式简介

对于初学者而言,正则表达式,仅从字面上来说不太好理解。但实际上,您可能早已经使用过了某些正则表达式功能,只是自己还没有意识到而已。 例如,您很可能使用过?和*这两个通配符来查找硬盘上文件。?...因此,所谓“通配符”,即“通用匹配字符”,就是用某个通用字符按事先所规定规则来查找匹配某些常规字符,从而实现“以一对多”(或“以一代多”)、“以简对繁”(或“以简代繁”)地简化、抽象化、通用化用来进行查找匹配表达式目的...正则表达式正是类似于这样模板或模具,用来检验或框定哪些字符串是符合正则表达式所描述字符串共同特征同一类字符串;而这个检验或框定过程,就称之为匹配。 3....因此,正则表达式是一种特殊字符串(即正则表达式字符串,往往直接简称为正则表达式或正则式),用来描述、匹配、过滤符合某些特征其它字符串(即输入字符串、源字符串、被测试字符串、被匹配字符串,往往直接简称为字符串...说某个正则表达式匹配某个字符串,通常是指这个字符串全部或一部分或几部分分别符合或者说满足正则表达式所描述字符串特征;也可以说是指这个字符串全部或一部分或几部分分别符合或者说满足正则表达式所规定匹配条件或匹配规则

1.1K40
领券