免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 6596 | 回复: 11
打印 上一主题 下一主题

如何在正则表达式[]中使用非换行符之类的 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-03-05 07:34 |只看该作者 |倒序浏览
比如有一个正则表达式
/\n[^\n]+/
我想取一个换行以及后面的字符,但后面的字符不能包括换行.也就是如何在[  ]中包括换行?

[ 本帖最后由 dream3401 于 2009-3-5 07:37 编辑 ]

论坛徽章:
0
2 [报告]
发表于 2009-03-05 08:00 |只看该作者

回复 #1 dream3401 的帖子

有点不明白你的意思,把例子贴个出来,

论坛徽章:
9
2015亚冠之阿尔纳斯尔
日期:2015-09-10 16:21:162015亚冠之塔什干火车头
日期:2015-07-01 16:23:022015年亚洲杯之巴勒斯坦
日期:2015-04-20 17:19:46子鼠
日期:2014-11-13 09:51:26未羊
日期:2014-08-28 18:13:36技术图书徽章
日期:2014-02-21 09:30:15酉鸡
日期:2014-01-14 11:12:49天蝎座
日期:2013-12-09 17:56:53平安夜徽章
日期:2015-12-26 00:06:30
3 [报告]
发表于 2009-03-05 08:11 |只看该作者
原帖由 dream3401 于 2009-3-5 07:34 发表
比如有一个正则表达式
/\n[^\n]+/
我想取一个换行以及后面的字符,但后面的字符不能包括换行.也就是如何在[  ]中包括换行?

要的是这个?   /\n.*/

论坛徽章:
0
4 [报告]
发表于 2009-03-05 08:32 |只看该作者
用ASCII码

论坛徽章:
0
5 [报告]
发表于 2009-03-05 08:40 |只看该作者
原帖由 wtuter 于 2009-3-5 08:00 发表
有点不明白你的意思,把例子贴个出来,

/\n[^\n]+/
就是如何在把换行写在[  ]中
上面蓝色的\n是两个字符,而不是我想要的换行符
请问“我是DBA”
怎么用ASCII在[ ]
能举例吗?

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
6 [报告]
发表于 2009-03-05 08:42 |只看该作者

回复 #5 dream3401 的帖子

不同程序(工具)表示也不同。

论坛徽章:
0
7 [报告]
发表于 2009-03-05 08:45 |只看该作者
原帖由 blackold 于 2009-3-5 08:42 发表
不同程序(工具)表示也不同。

比如就在sed里的正则表达式中[]包含换行,能举个例吗?

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
8 [报告]
发表于 2009-03-05 08:52 |只看该作者

回复 #7 dream3401 的帖子

try:
$ echo -e "foo\nbar"|sed 'N;s/[^\n]/O/g'
OOO
OOO

$ echo -e "foo\nbar"|sed 'N;s/[\n]/K/g'
fooKbar

论坛徽章:
0
9 [报告]
发表于 2009-03-05 09:05 |只看该作者
原帖由 blackold 于 2009-3-5 08:52 发表
try:

谢谢,我试了可以,但有一个问题想求教:
文本mytext如下:
aaa
bbb
cccc
ddd
eee
我想用sed 去掉后两行
sed -n ':a;$!{N;ba;};s/(\n[^\n]+){2}$//;p'    (当然可以用其它方法,这里只讨论用这种方法)
蓝色部分的正则怎么写?

论坛徽章:
0
10 [报告]
发表于 2009-03-05 09:08 |只看该作者
不会,给你顶!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP