Python之路-正则表达式
作业一:整理正则表达式博客
正则表通常被用来检索、替换那些符合某个模式(规则)的文本,为了提取对自己有用的信息,由命令解释执行;而通配符和命令是同一级别,为了提示处理效率,直接由shell解释执行。
| ^ | 行首 |
| $ | 行尾 |
| . | 除了换行符以外的任意单个字符 |
| * | 前导字符的零个或多个 |
| + | 前导字符一个或多个 |
| ? | 前导字符零个或一个 |
| x{m} | x出现m次 |
| x{m,n} | x出现m次至n次 |
| [] | 字符组内的任一字符 |
| [^] | 取反 |
作业二:grep作业(正则表达式及字符处理)
grep -E=egrep 扩展模式
目标文件/etc/passwd,使用grep命令或egrep
1.显示出所有含有root的行:
2.输出任何包含bash的所有行,还要输出紧接着这行的上下各两行的内容:
postfix:x:
:::/var/spool/postfix:/sbin/nologin tcpdump:x::::/:/sbin/nologin yangming:x:::yangming:/home/yangming:/bin/bash nginx:x:::Nginx web server:/var/lib/nginx:/sbin/nologin
3. 显示出有多少行含有nologin。
40
4.显示出那些行含有root,并将行号一块输出。
5.显示出文件中
6.新建用户
abominable
abominate
anomie
atomize
编写正则表达式,将他们匹配出来

7.建四个用户
Alex213sb
Wpq2222b
yH438PIG
egon666
egon
过滤出用户名组成是字母+数字+字母的行
Alex213sb:x:
:::/home/Alex213sb:/bin/bash Wpq2222b:x::::/home/Wpq2222b:/bin/bash yH438PIG:x::::/home/yH438PIG:/bin/bash egon666:x::::/home/egon666:/bin/bash egon:x::::/home/egon:/bin/bash

8.显示出/etc目录下所有包含root的文件名

9. 过滤掉/etc/ssh/sshd_config内所有注释和所有空行


作业三:Sed作业:以/etc/passwd文件为模板
1,删除文件每行的第一个字符。

2,删除文件每行的第二个字符。

3,删除文件每行的最后一个字符。

4,删除文件每行的倒数第二个字符。

5,删除文件每行的第二个单词。

6,删除文件每行的倒数第二个单词。

7,删除文件每行的最后一个单词。

8,交换每行的第一个字符和第二个字符。

9,交换每行的第一个字符和第二个单词。

10,交换每行的第一个单词和最后一个单词。

11,删除一个文件中所有的数字。

12,删除每行开头的所有空格。
[root@ym
/]# head - /etc/passwd
root:x:
::root:/root:/bin/bash bin:x:::bin:/bin:/sbin/nologin daemon:x:::daemon:/sbin:/sbin/nologin adm:x:::adm:/var/adm:/sbin/nologin[root@ym /]# sed -r 's/^ *//' /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

13,用制表符替换文件中出现的所有空格。

14,把所有大写字母用括号()括起来。

15,打印每行3次。

16,只显示每行的第一个单词。

17,打印每行的第一个单词和第三个单词。

18,用命令获取格式为 mm/yy/dd 的日期格式,结合管道,将其换成 mm;yy;dd格式
[root@ym /]# date +"%m/%Y/%d"|sed -r 's/\//;/g'
;;
Python之路-正则表达式的更多相关文章
- python之路 正则表达式,模块导入的方法,hashlib加密
一.正则表达式re python中re模块提供了正则表达式相关操作 字符: . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字 \s 匹配任意的空白符 \d 匹配数字 \b 匹配单词的 ...
- python之路正则表达式
元字符 蓝色框中有非贪婪模式也不起作用,非贪婪模式在+后加上?号 有空字符串
- Python高手之路【五】python基础之正则表达式
下图列出了Python支持的正则表达式元字符和语法: 字符点:匹配任意一个字符 import re st = 'python' result = re.findall('p.t',st) print( ...
- python之路 目录
目录 python python_基础总结1 python由来 字符编码 注释 pyc文件 python变量 导入模块 获取用户输入 流程控制if while python 基础2 编码转换 pych ...
- Python之路【第十九篇】:爬虫
Python之路[第十九篇]:爬虫 网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用 ...
- Python之路【第十八篇】:Web框架们
Python之路[第十八篇]:Web框架们 Python的WEB框架 Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Pytho ...
- Python之路【第十七篇】:Django【进阶篇 】
Python之路[第十七篇]:Django[进阶篇 ] Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接 ...
- Python之路【第十六篇】:Django【基础篇】
Python之路[第十六篇]:Django[基础篇] Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...
- Python之路,Day14 - It's time for Django
Python之路,Day14 - It's time for Django 本节内容 Django流程介绍 Django url Django view Django models Django ...
随机推荐
- Input file 文本框美化
HTML原生的input file 上传按钮有多(无)不(力)漂(吐)亮(槽)我就不多说了.大家几乎在项目中都会有遇到图片.等文件需要上传的地方,好看的文件上传按钮会使人身心愉悦(我瞎说的).好了不多 ...
- iOS开发之Runtime常用示例总结
经常有小伙伴私下在Q上问一些关于Runtime的东西,问我有没有Runtime的相关博客,之前还真没正儿八经的总结过.之前只是在解析第三方框架源码时,聊过一些用法,也就是这些第三方框架中用到的Runt ...
- 从HTML5规范弄清i、em、b、strong元素的区别
为了语义化,HTML5增加了不少新标签.其中i.em和b.strong这两组标签是最容易弄混的,不好好去探究一下,还真说不清.这个也是前端面试中经常会问的问题.今天从源头上,也就是从HTML5的文档( ...
- 前端安全(XSS、CSRF防御)
一.网络安全 OWASP:开放式Web应用程序安全项目(OWASP,Open Web Application Security Project) OWASP是一个开源的 ...
- linux下zookeeper 配置参数
-----------zookeeper 配置文件 clientPort ---服务的监听端口dataDir ---用于存放内存数据库快照的文件夹,同时用于集群的myid文件也存在这个文件夹里 (注意 ...
- 2017-3-5 C#基础 函数
函数/方法:非常抽象独立完成某项功能的一个个体 函数的作用: 提高代码的重用性提高功能开发的效率提高程序代码的可维护性 函数分为: 固定功能函数高度抽象函数 函数四要素:输入,输出,函数体,函数名 p ...
- C#基础——数组(冒泡排序)
数组 所谓数组,就是相同数据类型的元素按一定的顺序的集合,就是把有限个类型相同的变量用一个名字来命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标.组成数组的各个变量称为数组的分量 ...
- Alamofire源码解读系列(三)之通知处理(Notification)
本篇讲解swift中通知的用法 前言 通知作为传递事件和数据的载体,在使用中是不受限制的.由于忘记移除某个通知的监听,会造成很多潜在的问题,这些问题在测试中是很难被发现的.但这不是我们这篇文章探讨的主 ...
- python算法(一)
python算法(一) 一.求数x的因子 x=100 divisors=()#初始化空的元组 for i in range(1,x): if x%i==0: divisors=divisors+(i, ...
- ASP.NET MVC 5 基本构成
MVC模式简介: MVC模式两种理解:一种是表现模式,另外一种是架构模式.它将应用程序分成三个主要组件即:视图(View)控件器(Controller)模型(Model) M: Model主要是存储或 ...