[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
dom与re各有利弊:dom方便易操作,而re效率高,尤其对于大量大型xml文件,dom每次创建和释放占用很多时间,re速度快;测试过,同样文件,re约为dom时间的1/3
不过对于大型xml文件,不应使用dom,而使用xmltextreader
微信:flashercs
QQ:49908356

TOP

回复 23# uhjjhjff11d


    hi,你说的这个帖子我全程参与过,我有发言权。
问题的关键不在于使用正则合不合适,而在于提问者对问题的描述不到位,以及提问者的需求一直在变化。
就是说,修改属性值的过滤条件连他自己事先都不清楚,发现不对就更新需求,摸石头过河,走一步看一步。
连人都无法预知的问题,提问者反而让脚本事先做预判。
我认为脚本不适合干这个,几次修改后我就放弃了。

我猜你很会写 PowerShell 脚本,贴一个完美版让大家都学习一下吧。

另外,所谓的 bug 你多站在脚本编写者的角度看看,多数楼层的答案在需求不再变化的时候已经满足了要求,这算bug吗?

TOP

希望各位有志之士可以在论坛大力推广PowerShell以及第三方命令行工具
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

本帖最后由 523066680 于 2019-11-8 16:57 编辑

回复 25# ivor

      主要是楼主没发现,smss 是个妹子
昂,原来只是QQ头像是女人而已,当我没说  (逃

TOP

楼主出发点是好的,只是言辞可能有些过激,也是好心劝大家写 易读、高可靠、效率高的代码,正能量的帖子必须支持。
#&cls&@powershell "Invoke-Expression ([Io.File]::ReadAllText('%~0',[Text.Encoding]::UTF8))" &pause&exit

TOP

我就看看 老了 唉

TOP

本帖最后由 uhjjhjff11d 于 2019-11-14 17:28 编辑

回复 22# WHY
29 樓的圖片顯示他手中的文檔是 xml沒錯。至於有沒有被他的正則匹配替換操作引入錯誤的內容,我就不知道了。其它人拿了錢,給出的代碼到了好幾版之後還是有 bug,那你要我說正則很適合搞 xml,我還真不認同。
100元人民币 求bat或Powershell处理文本内容【已解决】

  • 20 樓 26樓代碼更新。29樓 bug
  • 31 樓代碼更新,32樓 bug
  • 40 樓代碼更新,41 樓 bug,導致手機無法開機。(他不會在虛擬機上面測試嗎?)
  • 47 樓的回覆......他以為變量換名就是混倄器了......100元的代碼 vs Google 開源 project
  • 52 樓 56 樓代碼更新,59 樓 看起來匹配不能處理所有的更名
  • 60 樓代碼更新,63 樓 他還在想什麼 改名称为A~ZZZZ之间,本來就不應該這樣處理的,所以我說其他人也是誤導他居多

37樓就提到了應該直接用 api

43樓也提到了直接用 api

之前看到這些回覆就不會發帖了,因為我根本不想讀下面許多濫用正則,到處是 bug 的代碼。

TOP

回复 16# uhjjhjff11d


    这个是有原因的。样本是“非标准”的,<?xml version="1.0" ?>文件头都没有,第一步 [xml](type a.xml) 就行不通。说多了都是泪。

TOP

支持樓主。
去学去写去用才有进步。安装python3代码存为xx.py 双击运行或右键用IDLE打开按F5运行

TOP

如鲠在喉、不吐不快。
凭什么使用正则处理 xml 文档要被扣上“滥用”之罪?
“一题多解”不是经常被我们大家提倡的吗?多一种解题方法和思路有坏处吗?
是因为正则不能解决 xml 文档问题?还是正则晦涩难懂?还是正则不合自己口味?
PowerShell脚本而已,首先是能够解决具体问题,然后才考虑效率、通用性、可读性等问题。
能够解决问题的方法,你完全可以不用,甚至不相信它能用,但不要轻易说它“滥”。

TOP

回复 17# cfwyy77_bat


    其实双击右上角繁体中文就好了

TOP

吃瓜群众:
老纳望着江面如织般的船只,曰:两人耳!
QQ: 己阵亡
脚本优先 [PowerShell win10]

TOP

路过...
楼主是台湾的朋友吗? 个人看繁体真的是不太习惯。
楼主说的建议很中肯。现在如果要解析xml 或者html,除非是文本又短又特别简单的需求,我才会用正则,其它我更愿意选择相应的解析库,各个语言应该基本都有相应的库。
关于伸手党的问题,我个人觉得就是现在大环境所致,现在的人大都比较浮躁,都比较想要快速达到目的,只注重结果,不注重过程,所有有些基础的东西,有人也不愿意去学,想直接知道结果。
话又说回来,现在论坛人气真的不高,我也相信bat一些东西用的人真的不多了。所以我感觉论坛版主对这方面也比较宽容的。

TOP

回复 12# a20150604


    这么庞大的正则……
正则这么复杂的规则,还要匹配这么长的条件,cpu处理起来困难很正常,
正则写的太长也不利于阅读,

一般正则超过15个字符的话就要考虑用条件判断、循环什么的来代替了,再长了咱也难受,cpu更受不了

TOP

本帖最后由 老刘1号 于 2019-11-7 22:02 编辑

回复 11# bailong360


    其实可以大推各种强力第三方的教程,毕竟批的第三方库还是丰富且强大的,
特别如:文本处理可以用各种linux shell命令的win32版本,图像处理可以用imagemagick,媒体流处理可以用FFMPEG。
这些工具要用其它语言调用,学习成本肯定比批处理高,实现也不一定简洁。

论坛现在就是,第三方工具封装好的一大堆,没人用。
回答清一色用混编我私以为是要给伸手党一个触手可得的运行环境做出的无奈之举。

批也有一些得天独厚的优点,如文件管理,
比如深度优先遍历一个目录,来一句dir就行了,其它语言可能还要来个递归
我个人认为,批用来管理文件还是挺舒服的
1

评分人数

    • ivor: 服务器用第三方工具有风险,还是尽量用系统 ...技术 + 1

TOP

返回列表