搜索
查看: 29937|回复: 58

去重练习

  [复制链接]

56

主题

474

帖子

3808

积分

荣誉会员

Rank: 8Rank: 8

积分
3808
发表于 2011-1-4 10:03:44 | 显示全部楼层 |阅读模式
本帖最后由 cbtan 于 2011-12-16 16:06 编辑
  1. str=/*
  2. aaaa
  3. aaaa
  4. bbbb
  5. aaaa
  6. bbbb
  7. aaaa
  8. aaaa
  9. bbbb
  10. aaaa
  11. bbbb
  12. aaaa
  13. aaaa
  14. bbbb
  15. aaaa
  16. bbbb
  17. */

  18. //你的处理代码//

  19. //之后str里面只能含有  aaaa bbbb
  20. //table有个很好的特性 就是 "键" 是没有重复的
  21. //通过这个简单的列子,希望大家能了解这个特性
复制代码

暂时还是设置 隐藏


str=/*
aaaa
aaaa
bbbb
aaaa
bbbb
*/


tab={}
去重={}
str=string.split(str,
'<\r\n>') //拆分进str
io.open()
for(k,v in str){
   
if(not 去重[v]){
        
sleep(2000) //可删除
        io.print("我没有找到   "+v) //可删除
        io.print("") //可删除
        
        去重[v]=1
        
        
sleep(2000) //可删除
        io.print("已将数值   " + v + "   记录到 去重 的键里面了") //可删除
        io.print("") //可删除
        
        table.push(tab,v)
        
        
sleep(2000) //可删除
        io.print("已将数值   " + v + "   压入进 tab 了") //可删除
        io.print("") //可删除
    }
   
else { //可删除
        io.print("找到记录,不操作") //可删除
        io.print("") //可删除
    } //可删除
   
}
io.print(
"=================================")
io.print(string.join(tab,
'\n')) //拼接到一起

execute("pause")
io.close()


回复

使用道具 举报

117

主题

1237

帖子

6592

积分

六级会员

Rank: 9Rank: 9Rank: 9

积分
6592
发表于 2011-1-4 10:46:02 | 显示全部楼层

[i=s] 本帖最后由 落伍者 于 2011-1-4 10:47 编辑 [/i] str=[color=#008000]/* aaaa aaaa bb

本帖最后由 落伍者 于 2011-1-4 10:47 编辑

str=/*
aaaa
aaaa
bbbb
aaaa
bbbb
aaaa
aaaa
bbbb
aaaa
bbbb
aaaa
aaaa
bbbb
aaaa
bbbb
*/


table.find=
function(tab,str){
   
for(k,v in tab){
        
if(v=str){
            
return k;
        }
   
    }
   
}

tab={}
for m in string.gmatch(str,"\w+") {
   
if(!table.find(tab,m)){
        table.push(tab,m)
    }
}


str=
""
for(k,v in tab){
    str+=v+
'\r\n'

}

io.open()
io.print(str)
execute("pause")
io.close()


//这个只是一种方法,期待看到更多的...
我是菜鸟...
回复

使用道具 举报

7

主题

161

帖子

935

积分

三级会员

Rank: 4

积分
935
发表于 2011-1-5 17:38:31 | 显示全部楼层

[code] io.open();//打开控制台 undup = function(str,sep){

  1. <!--StartFragment   --> io.open();//打开控制台

  2. undup = function(str,sep){
  3.     var tab = {};
  4.     var tab1 = string.split(str,sep);
  5.     for(k,v in tab1){
  6.         if(v!=""){
  7.             tab[v] = 0;
  8.         }
  9.     }
  10.    
  11.     var out = "";
  12.     for(k,v in tab){
  13.         out += k+sep;
  14.     };
  15.     return out;
  16. }

  17. var str=/*
  18. aaaa
  19. aaaa
  20. bbbb
  21. aaaa
  22. bbbb
  23. aaaa
  24. aaaa
  25. bbbb
  26. aaaa
  27. bbbb
  28. aaaa
  29. aaaa
  30. bbbb
  31. aaaa
  32. bbbb
  33. */
  34. var sep = '\r\n';

  35. str = undup(str,sep);
  36. io.print(str);

  37. execute("pause") //按任意键继续
  38. io.close();//关闭控制台

复制代码

有眼界才有境界,有实力才有魅力,有思路才有出路!
使用20%的努力,带动80%的资源,创造100%的成功!
回复

使用道具 举报

5

主题

84

帖子

462

积分

二级会员

Rank: 3Rank: 3

积分
462
发表于 2011-1-5 18:59:20 | 显示全部楼层

str=/* aaaa aaaa bbbb aaaa bbbb aaaa aaaa bbbb aaaa bbbb aaaa aaaa

str=/*
aaaa
aaaa
bbbb
aaaa
bbbb
aaaa
aaaa
bbbb
aaaa
bbbb
aaaa
aaaa
bbbb
aaaa
bbbb
*/
io.open();

var tab = {};
去重 = function(a){
        if(!tab[a]){
                tab[a]=true;
                return a;
        }else{
                return "";
        }
}

str2 = string.replace(str,"(.+?\r\n)",去重)
io.print(str2,#str2);

点评

甚妙!学习了  发表于 2011-1-7 16:57
回复

使用道具 举报

17

主题

97

帖子

4万

积分

新手入门

积分
44038
发表于 2011-1-6 16:56:54 | 显示全部楼层

[b]回复 [url=forum.php?mod=redirect&goto=findpost&pid=4371&ptid=660][color=Olive]n

回复 namwonsta 的帖子

受教了,这就是技巧啊。
有太多东西要学,可是感觉没时间。
回复

使用道具 举报

17

主题

97

帖子

4万

积分

新手入门

积分
44038
发表于 2011-1-7 14:34:38 | 显示全部楼层

去重 = function(a){.........} str2 = string.replace(str,"(.+?\r\n)",去重) “去重”这个函数

去重 = function(a){.........}
str2 = string.replace(str,"(.+?\r\n)",去重)
“去重”这个函数的参数“a”是如何传递进去的?我看不明白

点评

帮助文件里的 string.replace 说明 : 4、在string.replace中使用函数处理分组捕获 这节看看  发表于 2011-1-7 15:06
有太多东西要学,可是感觉没时间。
回复

使用道具 举报

3

主题

25

帖子

160

积分

一级会员

Rank: 2

积分
160
发表于 2011-1-11 22:10:45 | 显示全部楼层

看看学习下

看看学习下
回复

使用道具 举报

14

主题

67

帖子

386

积分

荣誉会员

Rank: 8Rank: 8

积分
386
发表于 2011-1-12 14:49:36 | 显示全部楼层

[b]回复 [url=forum.php?mod=redirect&goto=findpost&pid=4371&ptid=660][color=Olive]n

回复 namwonsta 的帖子


str=/*

aaaa
aaaa
bbbb
aaaa
bbbb
aaaa

aaaa
bbbb

aaaa
bbbb
aaaa

aaaa
bbbb
aaaa
bbbb
*/

io.open();

var tab = {};
去重 =
function(a){
        
if(!tab[a]){
                tab[a]=
true;
               
return a;
        }
else{
               
return "";
        }
}

str2 = string.replace(str,
"(.+?\r\n)",去重)
io.print(str2,#str2);

execute("pause") //按任意键继续
io.close();//关闭控制台


//如果里面有空格要怎么处理掉?

点评

表象都是浮云,背后的思想才是根本。大千世界芸芸众生,为什么会有那么多烦恼。:)  发表于 2011-1-12 17:03
要有学习目标和计划,多做练习,学好aardio
回复

使用道具 举报

56

主题

474

帖子

3808

积分

荣誉会员

Rank: 8Rank: 8

积分
3808
 楼主| 发表于 2011-1-12 15:24:26 | 显示全部楼层

[b]回复 [url=forum.php?mod=redirect&goto=findpost&pid=4901&ptid=660][color=Olive]A

回复 Auto 的帖子

str=/*
1
aaaa
aaaa
bbbb
aaaa
bbbb
aaaa

aaaa
bbbb
1
aaaa
bbbb
aaaa
1
aaaa
bbbb
aaaa
bbbb
*/

io.open();

var tab = {};
去重 =
function(a){
        
if(#a>2 and !tab[a]){
                tab[a]=
true;
               
return a;
        }
        
else{
               
return "";
        }
}

str2 = string.replace(str,
"(.+?\n)",去重)
io.print(str2,#str2);

execute("pause") //按任意键继续
io.close();//关闭控制台

点评

同意: 5.0 真棒: 5.0
同意: 5 真棒: 5
非常好,拿走用了 多谢  发表于 2011-12-2 23:51
回复

使用道具 举报

14

主题

67

帖子

386

积分

荣誉会员

Rank: 8Rank: 8

积分
386
发表于 2011-1-12 15:57:11 | 显示全部楼层

[b]回复 [url=forum.php?mod=redirect&goto=findpost&pid=4902&ptid=660][color=Olive]c

回复 cbtan 的帖子

厉害!!
要有学习目标和计划,多做练习,学好aardio
回复

使用道具 举报

117

主题

1237

帖子

6592

积分

六级会员

Rank: 9Rank: 9Rank: 9

积分
6592
发表于 2011-1-12 16:28:22 | 显示全部楼层

[b]回复 [url=forum.php?mod=redirect&goto=findpost&pid=4902&ptid=660][color=Olive]c

回复 cbtan 的帖子

a!=""
难道不行吗?

点评

自己运行次嘛!  发表于 2011-1-12 16:32
我是菜鸟...
回复

使用道具 举报

0

主题

2

帖子

14

积分

新手入门

Rank: 1

积分
14
发表于 2011-1-14 03:18:55 | 显示全部楼层

偶要学习~{:lol}

偶要学习~
回复

使用道具 举报

1

主题

7

帖子

37

积分

新手入门

Rank: 1

积分
37
发表于 2011-1-18 11:07:57 | 显示全部楼层

我来学习一下

我来学习一下
回复

使用道具 举报

1

主题

33

帖子

192

积分

一级会员

Rank: 2

积分
192
发表于 2011-3-22 11:03:32 | 显示全部楼层

查找重复在许多时候都是能用上的

查找重复在许多时候都是能用上的
回复

使用道具 举报

51

主题

265

帖子

1548

积分

四级会员

Rank: 6Rank: 6

积分
1548
发表于 2011-3-28 18:39:46 | 显示全部楼层

许多技巧,需要消化一下。

许多技巧,需要消化一下。
回复

使用道具 举报

7

主题

123

帖子

747

积分

三级会员

Rank: 4

积分
747
QQ
发表于 2011-3-31 07:37:11 | 显示全部楼层

处理字符正则首推,aardio更独特

处理字符正则首推,aardio更独特
自己做的更适合自己
回复

使用道具 举报

0

主题

1

帖子

8

积分

新手入门

Rank: 1

积分
8
发表于 2011-4-2 10:47:42 | 显示全部楼层

[b]回复 [url=forum.php?mod=redirect&goto=findpost&pid=5255&ptid=660][color=Olive]z

回复 zjgtem 的帖子

参观一下,如有不便,请多多包涵。
回复

使用道具 举报

0

主题

3

帖子

5

积分

新手入门

Rank: 1

积分
5
发表于 2011-4-2 15:13:45 | 显示全部楼层

请问,控制台是在哪运行的,求指教,谢谢

请问,控制台是在哪运行的,求指教,谢谢
回复

使用道具 举报

1

主题

5

帖子

32

积分

新手入门

Rank: 1

积分
32
发表于 2011-4-2 16:56:55 | 显示全部楼层

不熟悉,看上去很吃力。

不熟悉,看上去很吃力。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2018-12-12 01:37 , Processed in 0.093750 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表