批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程
[批处理文件精品]批处理版照片整理器[批处理文件精品]纯批处理备份&还原驱动在线第三方下载
返回列表 发帖

[原创] HTA版方程式上下标智能识别工具

一、程序介绍:能够将化学里 方程式或者化学式 中的数字、+、-智能识别为上下标,目前(测试阶段)本工具能够准确转化绝大多数的化学方程式、离子方程式、化合物、简单离子、复杂离子等中的上下标,可以大大减少化学教师手动输入上下标的麻烦。本工具完全开源,欢迎使用、复制、改装、传播,但在传播过程中请注明原作者:2laoshi(youxi01),另外,禁止将本工具用于商业用途!

二、注意事项使用本工具不能保证方程式中所有的上下标都能够转化正确,如果你在使用过程发现有错误,请在本文下边留言告知,我会及时的对程序中的正则算法进行更新,谢谢!


三、程序编写:vbs+hta

四、运行界面
转化前:

转化后:

保存:

五、作者:2laoshi(youxi01),个人博客:http://www.2laoshi.cn

六、程序下载智能转化上下标工具

源代码:
  1. <!--////////程序说明/////////====
  2. Intro  自动生成上下标
  3. FileName 自动
  4. Author  2laoshi(youxi01)
  5. Version  Beta1.0
  6. Web  http://www.2laoshi.cn
  7. MadeTime 2009-3-26~
  8. <!--//////////设置hta格式////////////-->
  9. <HTA:APPLICATION
  10. SCROLL="no"
  11. MaximizeButton="no"
  12. MinimizeButton="no"
  13. INNERBORDER="no"
  14. SHOWINTASKBAR="yes"
  15. SINGLEINSTANCE="yes"
  16. BORDER="thin"
  17. />
  18. <style type="text/css">
  19. a:link {color: blue}
  20. a:visited {color: blue}
  21. body  {background: #EEEEEE}
  22. button {
  23. height:23px;
  24. padding:2px 0 2px 0;
  25. margin:0px 2px 0 0;
  26. }
  27. .footer {
  28. text-align:center;
  29. margin:4px;
  30. font-size:15px;
  31. }
  32. #MyEditor {
  33. height:200px;
  34. width:388px;
  35. border:1px solid buttonshadow;
  36. }
  37. #ShowTip {
  38. background-color:#006644;
  39. color:Yellow;
  40. width=200px;
  41. height:30px;
  42. line-height:30px;
  43. font-size:12px;
  44. text-align:center;
  45. position:absolute;
  46. left:100px;
  47. top:80px;
  48. border:1px solid red;
  49. filter:Alpha(opacity=0);
  50. }
  51. #MyLink {
  52. width=99%;
  53. height:20px;
  54. font-size:12px;
  55. text-align:center;
  56. }
  57. </style>
  58. <script language="vbscript">
  59. width=400
  60. height=290
  61. window.resizeTo width,height
  62. ileft=(window.screen.width-width)/2
  63. itop=(window.screen.height-height)/2   
  64. window.moveTo ileft,itop
  65. Sub CopyText()
  66. MyEditor.document.execCommand("selectAll")
  67. MyEditor.document.execCommand("Copy")
  68. ShowTip.filters.alpha.opacity=100
  69. ShowTipinfo()
  70. MyEditor.document.selection.empty()
  71. End Sub
  72. Function RegExpRep(strng, patrn,patrn2)
  73. Set regEx =New RegExp ' 建立正则表达式。
  74. regEx.IgnoreCase =True' 设置是否区分字符大小写。
  75. regEx.Global =True' 设置全局可用性。
  76. regEx.Pattern=patrn
  77. RegExpRep=regEx.replace(strng,patrn2)
  78. set regEx=nothing
  79. End Function
  80. Sub GOGO()
  81. str=MyEditor.document.body.innertext&vbcrlf
  82. '处理特殊离子(带一个电荷的离子团,如:高锰酸根离子)
  83. ostr="MnO4-,ALO2-,NH4+,NO3-,HCO3-,HSO3-"
  84. ostr=split(ostr,",")
  85. for i=0 to Ubound(ostr)
  86.   Tr=right(ostr(i),2)
  87.   Tl=left(ostr(i),len(ostr(i))-2)
  88.   Tr1=left(Tr,1)
  89.   Tr2=Right(Tr,1)
  90. str=RegExpRep(str,ostr(i),Tl&"<sub>"&Tr1&"</sub><sup>"&Tr2&"</sup>")
  91. next
  92. '处理上标;
  93. str=RegExpRep(str,"(\d?[\+-])\s*([\+=\r\n、\.\u4e00-\u9fa5])","<sup>$1</sup> $2")
  94. '处理下标;
  95. str=RegExpRep(str,"([a-zA-Z))])([1-5])","$1<sub>$2</sub>")
  96. str=RegExpRep(str,"[\r\n]","<p>")
  97. str=replace(str,"<sup>+</sup><sup>+</sup>","<sup>+</sup>")
  98. MyEditor.document.body.innerhtml=str
  99. End Sub
  100. Function ShowTipinfo()
  101. if ShowTip.filters.alpha.opacity>0 then
  102. ShowTip.filters.alpha.opacity=ShowTip.filters.alpha.opacity-1
  103. settimeout "ShowTipinfo",50
  104. end if
  105. End Function
  106. </script>
  107. <body topmargin="2" leftmargin="2" oncontextmenu=self.event.returnvalue=false>
  108. <title>智能转化上下标-爱老师网 www.2laoshi.cn</title>
  109. <iframe id="MyEditor" onload="initeditor()"></iframe><br />
  110. <div id="ShowTip">已复制,请直接粘贴到word文档中</div>
  111. <p class=footer>
  112. <button onclick=GOGO><font color=red>生成上下标</font></button>
  113. <button onclick=CopyText>复制到剪贴板</button>
  114. <button onclick=self.close>退出</button></p>
  115. <div ID="Mylink"><a href="http://www.2laoshi.cn">欢迎光临爱老师网</a>¤<a href="http://www.2laoshi.cn/post/176.html">报告错误</a></div>
  116. <script language="javascript">
  117. function initeditor()
  118. {
  119. oStyle=MyEditor.document.createStyleSheet();
  120. oStyle.addRule("P","font-size:14px")
  121. oStyle.addRule("P","padding:0px")
  122. oStyle.addRule("P","margin:0px")
  123. oStyle.addRule("sub","font-family:Times new roman")
  124. oStyle.addRule("sup","font-family:Times new roman")
  125. MyEditor.document.designMode="on";
  126. }
  127. </script>
复制代码

对VBS及HTA还是不得其要领。。。
第三方命令行工具编程
Http://Hi.Baidu.Com/Console_App

TOP

和批处理差不多
学习思路也差不多,多看,多练OK

TOP

图片无法显示
【批处理在线视频分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

我帮忙写的代码不需要付钱,不用找我要支付宝或微信账号。如果一定要给,请到微信群给大家发红吧。

TOP

显示不了你就刷啊,呵呵。

TOP

现在可以了,可能是刚才网络不好吧。
【批处理在线视频分享】http://bbs.bathome.net/thread-31727-1-1.html
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html

我帮忙写的代码不需要付钱,不用找我要支付宝或微信账号。如果一定要给,请到微信群给大家发红吧。

TOP

返回列表