免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: GuoPC1222
打印 上一主题 下一主题

[文本处理] 写一个脚本 将所有程序中带有日文双引号的字符串全部提取,并记录原来位置以及字符大 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2013-08-06 13:43 |只看该作者
本帖最后由 GuoPC1222 于 2013-08-06 14:19 编辑

[url=forum.php?mod=redirect&goto=findpost&pid=& sslb.pdf (403.73 KB, 下载次数: 1)


文件上传了,类似文件几百个,在不同的文件夹下,现在是想把带“日文”的字符串提取出来,然后记录在原始文件位置,那个文件,第几行。还有一点有的可能在注释里有“日文”,这个要过滤掉,没写过脚本,突然来了个任务 ,求指点



   

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
12 [报告]
发表于 2013-08-06 13:51 |只看该作者
源文件就是PDF 文件吗? 最好把原本的格式直接上传。

论坛徽章:
0
13 [报告]
发表于 2013-08-06 14:00 |只看该作者
回复 12# rdcwayx



    源文件

论坛徽章:
0
14 [报告]
发表于 2013-08-06 14:01 |只看该作者
SSlib.rar (5.9 KB, 下载次数: 3)



回复 12# rdcwayx


    刚才没传好,请指点

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
15 [报告]
发表于 2013-08-06 14:04 |只看该作者
本帖最后由 rdcwayx 于 2013-08-06 16:05 编辑

给你个提示
  1. /*
  2. * SSU関係
  3. */
  4. /*デフォルト名 */
  5. /* ---- SSIsSsuPower----*/
  6. #define STR_SSUPWROFF "電源切断 電源切断 "
  7. #define STR_SSUPWRON "電源投入 電源投入 "
  8. #define STR_SSUPWRSEQ "電源制御中 "
  9. #define STR_SSUPWRALRM1 "電源アラーム 1 "
  10. #define STR_SSUPWRALRM2 "電源アラーム 2 "
  11. #define STR_SSUPWRPATHE "電源制御パス異常 "
  12. #define STR_SSUPWRSCCIERR "SCCI 制御部異常 "
复制代码
  1. od -c urfile
  2. 0000000   /   *  \n   *       S   S   U 351 226 242 344 277 202  \n   *
  3. 0000020   /  \n   /   * 343 203 207 343 203 225 343 202 251 343 203 253
  4. 0000040 343 203 210 345 220 215       *   /  \n   /   *       -   -   -
  5. 0000060   -       S   S   I   s   S   s   u   P   o   w   e   r   -   -
  6. 0000100   -   -   *   /  \n   #   d   e   f   i   n   e       S   T   R
  7. 0000120   _   S   S   U   P   W   R   O   F   F       " 351 233 273 346
  8. 0000140 272 220 345 210 207 346 226 255     351 233 273 346 272 220 345
  9. 0000160 210 207 346 226 255       "  \n   #   d   e   f   i   n   e
  10. 0000200   S   T   R   _   S   S   U   P   W   R   O   N       " 351 233
  11. 0000220 273 346 272 220 346 212 225 345 205 245     351 233 273 346 272
  12. 0000240 220 346 212 225 345 205 245       "  \n   #   d   e   f   i   n
  13. 0000260   e       S   T   R   _   S   S   U   P   W   R   S   E   Q
  14. 0000300   " 351 233 273 346 272 220 345 210 266 345 276 241 344 270 255
  15. 0000320       "  \n   #   d   e   f   i   n   e       S   T   R   _   S
  16. 0000340   S   U   P   W   R   A   L   R   M   1       " 351 233 273 346
  17. 0000360 272 220 343 202 242 343 203 251 343 203 274 343 203 240       1
  18. 0000400       "  \n   #   d   e   f   i   n   e       S   T   R   _   S
  19. 0000420   S   U   P   W   R   A   L   R   M   2       " 351 233 273 346
  20. 0000440 272 220 343 202 242 343 203 251 343 203 274 343 203 240       2
  21. 0000460       "  \n   #   d   e   f   i   n   e       S   T   R   _   S
  22. 0000500   S   U   P   W   R   P   A   T   H   E       " 351 233 273 346
  23. 0000520 272 220 345 210 266 345 276 241 343 203 221 343 202 271 347 225
  24. 0000540 260 345 270 270       "  \n   #   d   e   f   i   n   e       S
  25. 0000560   T   R   _   S   S   U   P   W   R   S   C   C   I   E   R   R
  26. 0000600       "   S   C   C   I     345 210 266 345 276 241 351 203 250
  27. 0000620 347 225 260 345 270 270       "  \n
  28. 0000631
复制代码
这个针对所有的双字节字符,只要有字符是三位数的,如果你的文件里只是日文的话,那就可以确定了。

http://bbs.chinaunix.net/forum.p ... 9&fromuid=28783

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
16 [报告]
发表于 2013-08-06 14:08 |只看该作者
确定后,写个脚本定位输出一下,思路大体就是这样。

论坛徽章:
0
17 [报告]
发表于 2013-08-06 14:10 |只看该作者
回复 15# rdcwayx
谢谢 了


   

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
18 [报告]
发表于 2013-08-06 14:15 |只看该作者
试了一下你新上传的.h 文件,确实可以,判断的话,可能要考虑 >128 的才是双字节字符。

论坛徽章:
0
19 [报告]
发表于 2013-08-06 16:42 |只看该作者
回复 14# GuoPC1222


    用你的文件试了一下
    find SSlib/ -type f -print0 | "xargs" -0  grep  -nH "STR_"| grep define | awk -F '[: \t"]+' '{print $1,$2,$4"\t"$(NF-1)}'

输出大概是这样的,看看是否要这效果:
SSlib/SSlib.h 112 STR_PWROFF        電源切断
SSlib/SSlib.h 113 STR_PWRON        電源投入
SSlib/SSlib.h 114 STR_PWRSEQ        電源制御中
SSlib/SSlib.h 115 STR_PWRALRM1        電源アラーム1
SSlib/SSlib.h 116 STR_PWRALRM2        電源アラーム2
SSlib/SSlib.h 117 STR_PWRPATHE        電源制御パス異常
SSlib/SSlib.h 118 STR_PWRSCCIERR        SCCI制御部異常
SSlib/SSlib.h 121 STR_MAINT        保守中
SSlib/SSlib.h 122 STR_ACTMAINT        活性保守中
SSlib/SSlib.h 123 STR_OFFLINE        オフライン
SSlib/SSlib.h 124 STR_STOP        停止
SSlib/SSlib.h 125 STR_RUN        動作中
SSlib/SSlib.h 126 STR_IPL_EXE        IPL実行中
SSlib/SSlib.h 127 STR_IPL_COMP        IPL完了
SSlib/SSlib.h 128 STR_IPL_FAIL        IPL失敗
SSlib/SSlib.h 129 STR_IMPL_FAIL        IMPL失敗
SSlib/SSlib.h 130 STR_SYSDOWN        システムダウン
SSlib/SSlib.h 131 STR_CHKSTOP        チェックストップ
SSlib/SSlib.h 132 STR_SVPPATHE        SVP通信異常
SSlib/SSlib.h 133 STR_DEGRAD        縮退運転中
SSlib/SSlib.h 134 STR_OPCALL1        オペコール1
SSlib/SSlib.h 135 STR_OPCALL2        オペコール2
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP