找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 36506|回复: 11

[文本处理] 请问哪种语言处理文本最强大而不失真

[复制链接]
发表于 2018-9-21 12:03:29 | 显示全部楼层 |阅读模式
最近学习bat发现特别吃力,原因是对文本的限制太多,比如一行不能超过8192,比如不能包含特殊字符。比如不兼容unicode编码
如果要替换文本中的星号,都特别麻烦

后来学习了sed,发觉确定简洁和强大多了。但是sed和bat混用的时候,对于变量延迟的要求特别严格,不小心会出错。
这几天发现,sed在替换字符串时,如果遇到有"\",会自动把斜杠抛弃。

请问,哪种语言对文本的读、写、改,能够最大程度的实现原汁原味,而不”擅自”处理?
发表于 2018-9-21 12:45:44 | 显示全部楼层
试试PowerShell吧
发表于 2018-9-21 14:46:27 | 显示全部楼层
perl很擅长文本处理 ,不过更建议学python,延展性更大
发表于 2018-9-21 14:51:10 | 显示全部楼层
有很多语言都支持,需要掌握一定的编码知识。
 楼主| 发表于 2018-9-21 16:38:03 | 显示全部楼层
很早听说perl是处理文本最强大的语言,后来才有了python,有些纠结不知道该学哪个
不过谢谢大家的指导
发表于 2018-9-21 17:31:44 | 显示全部楼层
现在学python是主流,可以做很多狂拽酷炫的事情,也可以做实用工具。
发表于 2018-9-23 04:23:22 | 显示全部楼层
楼主能学会SED学其它语言应该没有什么问题。
基本上能学会一门编程语言的基础再去学其它编程都很容易。

如果要学python, 推荐直接学python3
编码的问题,如果UTF8可以满足的话,各个环节上尽量统一使用UTF8编码保存你的代码和文本内容。
这样可以省掉很多不必要的麻烦。
 楼主| 发表于 2018-9-23 06:36:18 | 显示全部楼层
回复 7# codegay
谢谢,似乎sed、awk、grep,不少语言也支持使用吧。毕竟三剑客处理文本的功能很强大。
但不知道python中,有没有什么命令可以代替甚至超越sed?
 楼主| 发表于 2018-9-23 06:36:43 | 显示全部楼层
回复 7# codegay
谢谢,似乎sed、awk、grep,不少语言也支持使用吧。毕竟三剑客处理文本的功能很强大。
但不知道python中,有没有什么命令可以代替甚至超越sed?
发表于 2018-9-23 08:35:11 | 显示全部楼层
本帖最后由 codegay 于 2018-9-23 08:40 编辑

回复 9# 踏沙行

这些工具都统一支持的文本处理规则叫正则表达式,编程语言里以库的形式来支持和兼容正则表达式。不同编程语言里的正则表达大体都相同。只是一些符号细节表达方式不同。

python的标准正则表达库是re

第三方有一个非常强大的正则表达式库叫做regex
https://www.cnblogs.com/gayhub/p/6354097.html

你先踏实把语言学入门了吧。没有基础是用不了的。
 楼主| 发表于 2018-9-24 11:42:33 | 显示全部楼层
回复 10# codegay
OK,谢谢
regex的库果然厉害,\p{han}、\p{latin}这样的匹配,厉害了
发表于 2018-9-24 19:53:28 | 显示全部楼层
支持Python
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 19:36 , Processed in 0.009885 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表