猪猪再也不用吃屎了
昨天去接人,提前去了,车又晚点,有些闲暇时间。不做低头族并拒绝发呆的俺,就半闭着眼睛养神(随时捕捉眼前路过的靓丽的风景),顺带思考猪吃屎的严肃问题。脑子里闪现全拼切割的结构:guang'an,li'a,men'gang ……
分隔符!让分隔符参与到替换程序中来,还有,换行符也要参与!
于是找到了彻底解放猪猪的方案,核心是被替换字串的边界确定——一旦边界得以确定,替换就是精准的,且替换的结果就不会在后续的替换中被重复替换,就不存在出错的几率。是的,加入了被替换对象的边界后,每一个子循环的操作,只有符合正则语意,都①得出正确的新字串,②它不再具备被再次替换的特征字串,从而避免在后续的替换子循环中弄错结果。
现实操作还需要改进替换变量的拼音数组,将可能出现的汉字拼音组合且需要替换为双拼的全部罗列出来,并将双拼字串也附在每一个全拼组合的后面,构建一个二维数组。然后利用 EmEditor 宏对正则的支持,在每一次替换子循环中都进行两种替换:①分隔符左边的替换,②分隔符右边的替换。
脚本程序写好后,测试,惊喜发现:猪猪解放了,不用再吃屎了!
核心代码示例:
var py_ar = [
["zhuang","vl"],
["chuang","il"],
["shuang","ul"],
// 这里还有很多……
["e","ee"]
];
for(var i = 0; i <py_ar.length; i++){
document.selection.Replace("\t"+py_ar+"'", "\t"+py_ar+"'", eeFindReplaceEscSeq | eeReplaceAll | eeFindReplaceRegExp,eeExFindSeparateCRLF);
document.selection.Replace("'"+py_ar+"$", "'"+py_ar, eeFindReplaceEscSeq | eeReplaceAll | eeFindReplaceRegExp,eeExFindSeparateCRLF);
}
恭喜黑黑灵机一动又想出新的字符串替代方案{:4_187:} 对这种程序不熟,看着好复杂啊。ee是什么,看出现了好多次。 就半闭着眼睛养神(随时捕捉眼前路过的靓丽的风景),顺带思考猪吃屎的严肃问题。
一心二用还能想出解决方案,这也太牛了吧{:4_170:} 红影 发表于 2021-9-2 09:48
对这种程序不熟,看着好复杂啊。ee是什么,看出现了好多次。
ee,EmEditor宏的属性和方法,帮助文档里都有,我从那里找到的 红影 发表于 2021-9-2 09:44
恭喜黑黑灵机一动又想出新的字符串替代方案
用纯 JS 也是可以的,只是不想折腾太多,就在 EmEditor 里弄弄。EmEditor里纯 JS 替换运行的效率比 EmEditor 的宏方法低一些,两者结合,各取所长,效果还不错。 马黑黑 发表于 2021-9-2 09:57
ee,EmEditor宏的属性和方法,帮助文档里都有,我从那里找到的
原来是特定的设置语言。黑黑好学{:4_204:} 马黑黑 发表于 2021-9-2 09:59
用纯 JS 也是可以的,只是不想折腾太多,就在 EmEditor 里弄弄。EmEditor里纯 JS 替换运行的效率比 EmEdi ...
黑黑已经把这些玩得都很纯熟了,才会有这样的结合。赞一个{:4_199:} 红影 发表于 2021-9-2 10:19
黑黑已经把这些玩得都很纯熟了,才会有这样的结合。赞一个
都是尝试出来的吧 马黑黑 发表于 2021-9-2 11:02
都是尝试出来的吧
这样的尝试带来了功力的不断提升。{:4_204:} 红影 发表于 2021-9-2 11:10
这样的尝试带来了功力的不断提升。
有些东西是一通百通吧。系统学过一门语言的,接触另一门的时候,只要给他一个手册,它就能用这门新语言做个项目。 老黑是边看美女边思考吧! 马黑黑 发表于 2021-9-2 11:15
有些东西是一通百通吧。系统学过一门语言的,接触另一门的时候,只要给他一个手册,它就能用这门新语言做 ...
也需要对这些感兴趣,否则是不会投入的。 红影 发表于 2021-9-2 20:30
也需要对这些感兴趣,否则是不会投入的。
那是自然。最近有个跟班的,人挺聪明,学的东西也多。工作层面,有些它是没有接触过的,甚至都没听说过,但我一解释或提出要求,他都能顺利完成。这得益于他的博学,更得益于他对工作的热爱。 加林森 发表于 2021-9-2 20:15
老黑是边看美女边思考吧!
队长啥事都知道 马黑黑 发表于 2021-9-3 12:39
那是自然。最近有个跟班的,人挺聪明,学的东西也多。工作层面,有些它是没有接触过的,甚至都没听说过, ...
是的,主动要学习的,和被动完成任务式的学习,效果肯定不一样。恭喜黑黑收了个好徒弟。 红影 发表于 2021-9-3 16:24
是的,主动要学习的,和被动完成任务式的学习,效果肯定不一样。恭喜黑黑收了个好徒弟。
也不是徒弟,就是随便跟跟,最多算得上半个徒弟吧。 马黑黑 发表于 2021-9-3 12:41
队长啥事都知道
当然{:4_189:} 跟着老黑学习 {:4_190:} 大猫咪 发表于 2021-9-3 19:48
跟着老黑学习
感谢支持