当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 7 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [问题]在emacs中进行有条件替换?(已解决)
帖子发表于 : 2006-06-29 18:24 
头像

注册: 2005-12-19 6:38
帖子: 117
地址: 德国
送出感谢: 0 次
接收感谢: 0 次
比如说我现在有两列数据:
1.5 Mbits
1.2 Mbits
234 Kbits
1.4 Mbits

我想要说:如果第二列数据是Kbits,那么就把第一列的数据除以1000,不知道这样的操作在emacs里怎么实现?


最后由 lazyquail 编辑于 2006-08-01 19:20,总共编辑了 1 次

页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2006-06-29 21:29 

注册: 2006-06-27 11:50
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
如果想要交互式的做的话, 好像没有什么好的方式, 除非自己写一个完成这样功能的命令.


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2006-06-30 5:04 
头像

注册: 2005-12-19 6:38
帖子: 117
地址: 德国
送出感谢: 0 次
接收感谢: 0 次
嗯,如果能给出来一点线索也好,呵呵,现在感觉无从下手啊,期待~~


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2006-06-30 18:24 

注册: 2006-06-27 11:50
帖子: 6
送出感谢: 0 次
接收感谢: 0 次
请问一定要用emacs来做吗, 这种事情好像用个shell更简单些, 把你的问题再具体的说说吧, 大家帮你想想看..


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2006-07-20 20:48 

注册: 2005-11-05 23:18
帖子: 142
送出感谢: 0 次
接收感谢: 1
lazyquail 写道:
嗯,如果能给出来一点线索也好,呵呵,现在感觉无从下手啊,期待~~

如果熟悉正则表达式和elisp的话,对于每一行,做一个匹配,前面一个是数字,后面一个 Kbits ,如果匹配成功,就
替换成前面一个除以一千以后的结果……


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2006-07-20 23:24 
头像

注册: 2006-07-14 18:56
帖子: 345
地址: Apple Valley, Planet Tux, Linux System
送出感谢: 0 次
接收感谢: 0 次
这种事情不是emacs的强项。

awk '/Kbits/{$1/=1000}{print $1}' data


页首
 用户资料  
 
7 楼 
 文章标题 :
帖子发表于 : 2006-08-01 19:18 
头像

注册: 2005-12-19 6:38
帖子: 117
地址: 德国
送出感谢: 0 次
接收感谢: 0 次
这个问题后来我是用awk来解决的,也不算是特别的麻烦;现在了解到还可以利用emacs里定义macro来实现同样的功能,只是看别人演示过,没有自己做。虽然知道emacs不是什么功能都可以实现,但是能完成这样的编辑还是让我感觉到它强大的力量:)
正则表达式和elisp不熟,不过会找些资料来看。谢谢楼上的各位。


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 7 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译