24小时热门版块排行榜    

Znn3bq.jpeg
北京石油化工学院2026年研究生招生接收调剂公告
查看: 1106  |  回复: 5

ter20

铁杆木虫 (正式写手)

[交流] 【求助】结果文件中字符串的搜索程序 已有5人参与

高斯计算得到的log文件,只想要期中的能量,即结尾“HF=****”那一行,文件比较多,想写个程序自动读取这一行再输出到一个新的文本文件中,因为是新手,所以不知道具体的算法该如何实现,希望高手能够指点一二,谢谢
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hakekill

木虫 (小有名气)

ter20(金币+1):谢谢,只是不知道比较好的字符串匹配方法,一行一行地匹配吗? 2010-07-05 14:46:45
这个如果是用shell脚本的比较简单,直接用grep匹配你需要的行,然后将结果输出到新的文件就行了。如果大量的文件的话,用shell也比较方便。

如果是写程序的话,思路也差不多,打开一个文件读,然后匹配你需要的行,找到后输出到新的文件。多个文件的话,可以把文件名做成一个数组,或者专门用一个文件来存文件名。
2楼2010-07-05 13:25:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

ter20

铁杆木虫 (正式写手)

因为我要的HF=****就在高斯结果文件的最后,所以我想知道当我读文件时把读取位置移到文件结尾,能不能从文件结尾向文件开头搜索?
3楼2010-07-05 14:50:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

老虎大王

木虫 (著名写手)


ter20(金币+1):好的,我试试,谢谢啦 2010-07-05 15:24:03
余泽成(金币+1):谢谢参与应助! 2010-07-05 19:06:14
引用回帖:
Originally posted by ter20 at 2010-07-05 14:50:59:
因为我要的HF=****就在高斯结果文件的最后,所以我想知道当我读文件时把读取位置移到文件结尾,能不能从文件结尾向文件开头搜索?

程序读文件还是很快的,你从头到尾一行行地读文件,直到读出所需的字符串就可以了。
4楼2010-07-05 14:57:46
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)


ter20(金币+1):谢谢你的建议啊,的确是会出现这种问题,我再试试 2010-07-05 20:41:43
nono2009(金币+1):鼓励应助。 2010-07-06 09:30:46
你读 gaussian 中最后的那部分内容中的 HF 其实还是比较麻烦的,因为 H 和 F 有可能分在两行,或者 HF 后面的数据被分在两行,所以,匹配字符串还真不是很好做的……

如果不强求最后的 HF,你可以在 .log 文件中找到那个数值,呵呵,那个肯定是在一行中的
5楼2010-07-05 20:38:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

tjyl

金虫 (正式写手)

★ ★
nono2009(金币+2):鼓励应助。 2010-07-06 09:30:25
我记得去年有人求助过这样的问题。
我觉得
1、直接用perl,先抽取后面部分的文件,然后再多行匹配。
2、自己试着看看能不能把gaussion输出结果的那个函数修改一下,让再输出HF前后都多输出一个换行符,就让这个HF=xx再单独的一行(我对gaussion不了解,不知道现在是不是完全不提供源码)
3、如果要蛮干,可以试试用C吧,其实C干这样不复杂的事情还是很容易的,其实也不是大家想的那么麻烦。反正总共就那么几种情况。

对于1,3都得先fseek把文件指针移在后面,比如倒数1K个字符处,这样后来的内容反正就那么100多行,也花不了多少时间去分析的
引用回帖:
Originally posted by snoopyzhao at 2010-07-05 20:38:47:
你读 gaussian 中最后的那部分内容中的 HF 其实还是比较麻烦的,因为 H 和 F 有可能分在两行,或者 HF 后面的数据被分在两行,所以,匹配字符串还真不是很好做的……

如果不强求最后的 HF,你可以在 .log 文件 ...

6楼2010-07-05 23:15:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 ter20 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 085600,321分求调剂 +15 大馋小子 2026-04-04 16/800 2026-04-08 22:59 by jean5056
[考研] 278求调剂 +21 范婷娜 2026-04-07 24/1200 2026-04-08 22:48 by may_新宇
[考研] 298求调剂 +4 manman511 2026-04-05 4/200 2026-04-08 16:50 by tjzhao
[考研] 一志愿电子科技大学085600材料与化工 329分求调剂 +11 Naiko 2026-04-04 11/550 2026-04-08 14:00 by wutongshun
[考研] 307求调剂 +14 超级伊昂大王 2026-04-06 14/700 2026-04-08 07:03 by 无际的草原
[考研] 调剂求助(生物与医药) +6 @6952 2026-04-06 6/300 2026-04-07 23:52 by lys0704
[考研] 331求调剂 +5 张元一 2026-04-07 6/300 2026-04-07 22:13 by hemengdong
[考研] 315求调剂 +17 小羊小羊_ 2026-04-02 18/900 2026-04-07 22:01 by lijunpoly
[考研] 本科生物信息学,总分362 求07 08调剂 +6 q小倩1210 2026-04-06 6/300 2026-04-07 19:40 by macy2011
[考研] 315求调剂 +3 TUZEIQAQ 2026-04-02 3/150 2026-04-07 17:32 by chenp123
[考研] 295求调剂 +18 xndjjj 2026-04-04 19/950 2026-04-07 11:02 by wangjy2002
[考研] 22408 331分求调剂 +4 y__1 2026-04-06 4/200 2026-04-06 17:26 by 土木硕士招生
[考研] 一志愿国科大信工所,英二数二408总分293分求调剂 +3 ilcyuan 2026-04-02 4/200 2026-04-06 16:35 by likeihood
[考研] 0703化学 +9 goldtt 2026-04-02 11/550 2026-04-06 10:35 by 无际的草原
[考研] 313求调剂 +5 海日海日 2026-04-04 5/250 2026-04-05 15:52 by jndximd
[考研] 085600调剂 +9 东照照照 2026-04-04 9/450 2026-04-05 13:44 by ujn_zhuj
[考研] 344材料与化工调剂 +9 调剂上岸玘 2026-04-03 9/450 2026-04-04 23:10 by happyddm
[考研] 306求调剂 +3 hyb上名工 2026-04-02 3/150 2026-04-04 18:12 by 热情沙漠
[考研] 280求调剂 +21 咕噜晓晓 2026-04-02 22/1100 2026-04-04 11:12 by 猪会飞
[考研] 材料科学与工程考研 +10 拯救皮特托先生 2026-04-02 10/500 2026-04-03 23:57 by userper
信息提示
请填处理意见