[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
请问,js中的
  1. @if (@_jscript_version<6)
  2. var i
  3. @else
  4. var i:int
  5. @end
复制代码
这些@符号是干什么的呀。

TOP

回复 9# CrLf


请问,想学这个JScript的话你有没有好的文档啊。我看你的JScript学的特好。O(∩_∩)O!

TOP

回复 11# CrLf


我这有一个问题,可以的话抽空解决一下,谢谢。O(∩_∩)O!
http://www.bathome.net/viewthread.php?tid=37044&extra=

TOP

本帖最后由 回家路上 于 2015-8-26 12:29 编辑

回复 11# CrLf


昨天学到了正则表达式。然后回头又去理解了你的mshta宿主方式混编的解析参数的正则(O(∩_∩)O~以前根本看不懂)
  1. var argv = getopts(mshta.commandLine)
  2. for(var i=0;i<argv.length;i++)alert(argv[i])
  3. function getopts(strArg){
  4.         var re = /([^"\s,;=]*"[^"]*(?:"[^"\s,;=]*")*[^"]*(?:"[^"\s,;=]*|$))|[^"\s,;=]+/g
  5.         var argv = []
  6.         strArg.replace(re,function($0,$1){argv.push($1?$1.replace(/^"(.*)"$/,'$1'):$0)})
  7.         return argv
  8. }
复制代码
然后我也试写了一个正则表达式
  1. (".+?"(?=[\s,;=]|$))|[^\s,;=]+
复制代码
用你的那个方法测了测。好使哈。分享一下。
  1. <!-- :
  2. @echo off
  3. mshta "%~0" 11111   111111,1111111;   1111"1"1"11=1111"11"111 "1111111111" "11"1"1"1111"" "1111,1111"
  4. pause
  5. -->
  6. <HTA:APPLICATION id=mshta></HTA>
  7. <script>
  8. var argv = getopts(mshta.commandLine);
  9. alert(argv.join("\r\n"));
  10. close();
  11. function getopts(strArg){
  12.         var re = /(".+?"(?=[\s,;=]|$))|[^\s,;=]+/g;
  13.         var argv = [];
  14.         strArg.replace(re,function($0,$1){argv.push($1?$1.replace(/^"(.*)"$/,'$1'):$0)});
  15.         return argv;
  16. }
  17. </script>
复制代码

TOP

回复 14# CrLf


getopts('"断" 断"续"续') 这样的是应该返回【断】【断】【续】【续】四个字符串吗?
我以为这种的是要返回【断】【断"续"续】这两个字符串呢。(⊙﹏⊙)b

TOP

回复 17# CrLf


哦,允许用双引号将分割符转义的意思。好的。我也想想。

TOP

回复 19# CrLf


赞一个,我想了好久都没想出来。


其实那个while不用覆盖的,思路也好呀。都搁这儿多好。

TOP

返回列表