安庆大理运城常德铜陵江西
投稿投诉
江西南阳
嘉兴昆明
铜陵滨州
广东西昌
常德梅州
兰州阳江
运城金华
广西萍乡
大理重庆
诸暨泉州
安庆南充
武汉辽宁

按键精灵代码模板非重复的文本记录

11月27日 溷元楼投稿
  大家好,我是公众号3分钟学堂的郭立员
  昨天群友问我能不能写一个模板,模板的功能是实现记录名字,如果文本里面有这个名字就不写入,如果没有就写入。
  这模板可以写,想用的朋友直接拉到文章底部,直复制粘贴代码就可以用,想了解一下过程,可以看看文章内容。
  在写脚本之前先要有个大概思路,知道脚本的难度在哪里。
  我在写这个模板之前会在脑子里面思考这么几个问题:
  这个代码的核心部分是什么,写入文本命令
  难点是什么?比对文本是否存在
  解决难点的思路,即如何实现比对文本,判断是否存在。
  这个问题也是有固定的解决方法,完全匹配就是ab的形式,也就是判断两个内容是不是相等,部分匹配是用查找命令,比如instr(1,a,b)0,这就是在a里面查找b是否存在。
  这两种方式要选择哪种呢?
  第一种:完全匹配,要把文本中存入的名字,一个个提取出来,然后和需要写入的名字对比,比对次数比较多。
  第二种:部分匹配,把文本里面全部名称一次性读取出来,然后用查找命令去查找,对于代码来说用一次查找就可以完成匹配的判断,同样它也存在缺点,就是包含关系会误判,比如我叫郭立员,现在要写入一个叫郭立的名字,从字面上看这很明显是两个人名,但是对于代码来说,在郭立员三个字中查找郭立也是找得到的,造成错误判断。
  分析利弊,第一种方法稍微麻烦,第二种方法准确率欠佳,两种都可以用,我个人觉得第一种稍微好一些。
  假定选择了第一种方法,要怎么实现逐个比对呢?
  先用readlines命令读取全部文本内容并存入数组,接下来遍历数组内容,没遍历出一个就和新内容进行比对,当数组中所有内容比对完,还没有一样的,就说明新内容不存在重复,可以直接写入到文本里面。
  假如数组遍历的过程中,某一个内容比对完是重复的,就可以直接跳出循环结束遍历数组的操作,新内容不需要写入文本。
  这里有没有难点呢?有的
  就是你怎么知道遍历数组结束是全部遍历完还是中间跳出循环结束遍历。Fori0ToUBOUND(arr)Ifarr(i)新内容ThenTracePrint跳出循环ExitForEndIfIfiUBOUND(arr)ThenTracePrint遍历完成EndIfNext
  我想到的解决方法是,iUBOUND(arr)的判断,就是看计次变量是不是数组最大下标,如果这个判断成立,说明循环过程中未出现跳出循环的操作,整个循环全部完成。
  想好解决比对问题这个难度,就可以开始写代码了,加上写入文本里面就可以。Dimpathsdcardpictures文本。txtDimcontent2TracePrintWriteTxt(path,content)FunctionWriteTxt(path,content)DimarrIfDir。Exist(path)0ThenTracePrint首次写入file。writepath,contentWriteTxttrueElsearrfile。readlines(path)IfLen(arr)0ThenTracePrint首次写入file。writepath,contentWriteTxttrueEndIfFori0ToUBOUND(arr)Ifarr(i)contentThenTracePrint已经存在WriteTxtfalseExitForEndIfIfiUBOUND(arr)ThenTracePrint不存在file。writelinepath,1,contentWriteTxttrueEndIfNextEndIfEndFunction
  这个完整的代码,我已经封装成函数,可以直接用了。
  照着脚本代码,我说几个细节部分:
  (1)判断了存储文本的这个文件是否存在
  (2)判断存储文本初始状态是不是空
  (3)首次写入,可以和新建文本一块完成
  (4)给函数加上布尔值的返回值,方便利用返回值的二次开发,这一点我在前面加了星标,意思是它很重要,我们写脚本通常不是孤立的一个功能,可能是多个功能放到一起,作为一个模板要考虑到能和其他代码结合。
  注:由于file插件的兼容性问题,win7系统请在手机上直接看文本内容,不要用电脑查看。
  本期内容就这些,感兴趣的朋友点个赞。
投诉 评论 转载

NANDFlash价格Q2或涨510光刻气部分原材料涨幅增大小鹏回应:全力配合调查G3起火事件近日,网传深圳市龙华区发生一起小鹏汽车G3着火案例。据悉,当时现场听到爆炸声,消防人员赶到后在现场进行了大量灭火工作,但是整车依然被烧报……游戏手机。性价比高的手机怎么选平时手机玩游戏总不那么尽兴,续航不够、网络卡顿、游戏不够流畅等问题极大影响了游戏体验,而手机厂商们会针对各种不同需求推出了能够顺畅玩游戏的手机,即游戏电竞手机。那么,游戏……用5W1H分析法,聊聊私域流量大家对私域流量了解可能还未全面,下面堆雪球小编用5W1H分析法为大家解答下私域流量:1、What:私域流量是什么?私域流量是指可以随时触达,无需付费,反复使用的私有……开发APP会遇到哪些问题随着网络时代的进步,手机APP正逐步取代传统的PC端网站,APP的广泛使用,悄然地改变着人们的生活方式。那么在开发APP时你会遇到什么样的问题呢?北京木奇移动技术有限公司,专业……电风扇变慢是什么原因,哪位大神学霸懂啊?电风扇的工作原理比其他家用电器是简单得多。电风扇使用的电流是交流电,主要的工作原理就是通电线圈在磁场中受力而转动,从而使得电能转化为机械能。转动风叶加速周围的空气流动,从而带走……新一代传感技术让农业耳聪目明当无人机在三亚的晴空缓缓升起,中国农业科学院棉花研究所南繁育种基地中控室的大屏上,基地的概貌和株高、叶面积指数、冠层温度、叶绿素含量等育种专家关心的表型数据逐渐清晰起来。……按键精灵代码模板非重复的文本记录大家好,我是公众号3分钟学堂的郭立员昨天群友问我能不能写一个模板,模板的功能是实现记录名字,如果文本里面有这个名字就不写入,如果没有就写入。这模板可以写,想用的朋友……FileSaver。js一款简单易用的前端文件保存库简介FileSaver。js是一个在客户端保存文件的一个js库,Api简单易用目前github的star是18。5Kgithub地址:https:github。comel……拼多多上面买的手机可信吗?拼多多买手机,你这个想法还是蛮大胆的嘛,实在是非常佩服我们要清楚一点,就是在网络上购买手机,不论天猫,京东,苏宁还是拼多多,在上班购买电子设备,本身就是具有一定的风险性,……iphone12系列听筒无声音故障,官方推出免费维修8月28日消息,苹果今日为iPhone12、iPhone12Pro机型推出了一项服务计划。苹果发通告表示,确认有小部分iPhone12和iPhone12Pro,这两款手机听筒模……昨夜今晨腾讯阿里滴滴等违反反垄断法被罚一加9系列被指作弊被G2021年7月8日驱动中国昨夜今晨市监总局发布22起违法实施经营者集中案件处罚通报腾讯、阿里巴巴、滴滴、美团、苏宁在列凤凰网报道,昨日,国家市场监管总局发布通报,对……年薪40万,阿里员工34岁决定考公务员!人到中年才知道做错了01放弃年薪40万,选择月薪5000朋友的朋友在阿里做程序员,今年34岁时,突然决定要考公务员。要知道考公务员的年龄上限是35岁,他只有一次机会了。问起为啥要……
芯片设计中verilog是什么警惕变了味的电商学院印度政府又下黑手以逃税为由突击搜查多家中企,涉及OPPO和小python爬虫(学了3天写出的代码)售价3399元仍供不应求,80W快充9倍光学变焦,还有16G任正非与柳传志角度互换一下,现在中国高科技领域是否会有改变?电商行业一周重点资讯(12。612。13)想买vivo手机,双十一怎么下单比较优惠?小米手机怎么关闭系统自带广告?人工智能时代的到来,还有哪些行业能站得住脚并且很有前景荣耀10x和,荣耀30怎么选,哪款拍照好?好空气由它守护,Taotronics空气净化器

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找七猫云易事利