正则表达式,取每行开头为4个字符的行

查看:719
本文介绍了正则表达式,取每行开头为4个字符的行的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

比如/etc/passwd文件中冒号前有用户名为3个字符的行,有用户名为4个字符的行,要只取4个字符的用户名的行怎么取?

解决方案

grep:
grep -P '(^[^:]{4})(?=:)' /etc/passwd

sed:
sed -rn '/^[^:]{4}:/p' /etc/passwd

awk:
awk -F: 'length($1)==4' /etc/passwd

python:
import re
print re.findall(r'(^[^:]{4}):', open('/etc/passwd').read(), re.M)

这篇关于正则表达式,取每行开头为4个字符的行的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆