正则表达式

正则表达式:Python 模块 re 简介

正则表达式简介 正则表达式(RegExp)是一种文本模式,包括普通字符(例如,a 到 z 之间的字母)和特殊字符(元字符)。 为了使文章更具可读性,本文将正则表达式冗长的 语法介绍 放在了文章的末尾。 运算符的优先级 正则表达式运算符的优先级顺序由高到低依次为: 转义符:\ 括号和中括号:(),(?:),(?=), [] 限定符:*,+,?,{n},{n,},{n,m} 定位点和序列:^,$,\元字符,字符 替换:| 字符具有高于替换运算符的优先级,使得 m|food 匹配 m 或 food。若要匹配 mood 或 food,请使用括号创建子表达式,即 (m|f)ood。 Raw String 正则表达式使用反斜杠 \ 来代表特殊形式或用作转义字符,这里跟 Python 的语法冲突,因此,Python 只好用 \\\\… read more »

CentOS/linux:如何查找目录下文件中是否包含指定字符串

在centos linux系统下查找文件中是否包含特定的行是经常会做的事情。那么如何来查看特定目录下的文件中是否包含特定的字符串呢?我们可以使用linux find命令来实现。 输入下面的命令: 查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名 1.正则表达式 (1)正则表达式一般用来描述文本模式的特殊用法,由普通字符(例如字符a-z)以及特殊字符(称为元字符,如/、*、?等)组成。 (2)基本元字符集及其含义 ^ :只匹配行首。 如^a 匹配以a开头的行abc,a2e,a12,aaa,…… $ :只匹配行尾。 如^a 匹配以a结尾的行bca,12a,aaa,……. * :匹配0个或多个此单字符。 如(a)* 匹配 空,a,aa,aaa,…. [] :只匹配[]内字符。可以是一个单字符,也可以是字符序列,用”,”将里面要匹配的不同字符串分开。也可以使用-来表示[]内字符序列的范围,如[1-5]表示[12345] \ :只用来屏蔽一个元字符的特殊含义。 如\*,\’,\”,\|,\+,\^,\. 等 .:(点)只匹配任意单字符。 pattern\{n\}:只用来匹配前面pattern出现的次数.n为次数。如a\{2\}匹配aa. pattern\{n,\}:含义同上,但次数最少为n.如a\{2,\}匹配aa,aaa,aaaa,….. pattern\{n,m\}:含义同上,但次数在n和m之间。如a\{2,4\}匹配aa,aaa,aaaa三个 (3)举例说明: ^$ :匹配空行 ^.$… read more »

Grep正则表达式:如何查找某个特定的IP地址

下面会举几个在grep命令中使用正则表达式从一个文件中匹配到特定的IP地址。下面的正则表达式将会匹配IPV4的地址。 正则表达式匹配IP地址: 使用下面的正则表达式来匹配IPV4的地址,先来匹配从0.0.0.0到999.999.999.999的模式。 示例:使用grep命令来查找匹配特定的地址 上面的正则表达只是简单的匹配了特定的类似于ip地址的传,但它不能匹配真正的IPv4地址。可以通过下面的正则表达式来匹配. 通过grep命令匹配文件中的IPv4地址 # 其中:-E选项表示使用grep扩展的正则表达式 -o选项是只显示匹配到的字符串 前面的文章里有更多的关于grep中正则表达式的用法。

Grep:如何在linux下使用grep命令

在linux/unix下,我们是怎么使用grep命令的呢?什么是grep呢?我们能用grep命令来干些什么呢?下面我们来分析: grep命令是在文件中全局查找指定的正则表达式,并且打印所有包含该表达式的行。egrep命令是扩展的grep,支持更多的正则表达式元字符。自由软件基金会提供了grep的免费版本,称作GNU grep,在linux系统上默认安装就是这个免费版本。 grep命令参数 [cc lang=”php”] grep ‘word’ 文件名 grep ‘word’ 文件1 文件2 文件3 …文件N grep ‘字符串1 字符串2’ 文件名 cat 文件名| grep ”字符串“ 命令 | grep “字符串” grep –color “字符串” 文件名 [/code] 如何使用grep命令去搜索某个文件中的内容呢? 查找 /etc/passwd… read more »

Grep命令中正则表达式(regular Expressions,RE)的用法

当你在使用grep命令的时候肯定会用到正则表达式,那么怎么在grep命令中使用正则表达式呢? 正则表达式元字符 grep命令支持很多正则表达式的元字符,以使用户能够更精准的定义要查找的模式。例如,可以通过制定的选项来关闭大小写敏感,要求显示行号等。 元字符 功能 示例 匹配对象 ^ 行首定位符 ‘^user’ 匹配所有以user开头的行 $ 行尾定位符 ’user$’ 匹配所以以user结尾的行 。 匹配一个字符 ‘u.r’ 匹配包含一个u,后跟一个字符,再跟一个r的行 * 匹配两个或多个前导字符 ’u*ser’ 匹配包含零个或多个u后,跟ser模式的行 [] 匹配一组字符中的人一个 ‘[uU]ser’ 匹配包含user或者User的行 [^] 匹配不在指定字符组里的字符 ’[^A-S]ser‘ 匹配一个不在A到S之间的字符,并且该字符后紧跟着ser的行 \< 词首定位符 ’\<user‘ 匹配包含以user开头的词的行… read more »

Sidebar