killunix 发表于 2010-8-21 18:29:22

正则请教

如下:│ 招架(parry) 指法(finger) 剑法(sword) │


有的是

│      招架(parry) 指法(finger)│


我要把parry、finger、sword这几个抓下来,怎么写个通用的

hba 发表于 2010-8-21 18:49:56

文若也要弄自己的领悟机器人?
你这么考虑会不会太复杂了?
我觉得直接用maper的那个变量的方式就可以了。
类似你这样的方式我也考虑过,后来还是放弃了。

killunix 发表于 2010-8-21 18:54:13

fullskills的我有做,两个id,每次要改,挺烦的,想搞个通用的。
他那个我看不懂

lzkd 发表于 2010-8-21 18:56:16

原帖由 killunix 于 2010-8-21 06:54 PM 发表 http://www.pkuxkx.com/forum/images/common/back.gif
fullskills的我有做,两个id,每次要改,挺烦的,想搞个通用的。
他那个我看不懂

一个id只要设置一次就可以了,然后就保存下来,以后就一直用那个了,哪里有这么麻烦

hba 发表于 2010-8-21 19:06:19

这么说吧,你要弄这个复杂的,你有没有考虑过一些特例,比如说侠客岛的skills是不能练习的,辟邪剑法在500级以内是不能练习的,乾坤大挪移是不能练习的,等等。

真要弄上面的正则的话,我这有个方法。

正则是^│\s+(.+?)\s+│$

效果是:
│特殊技能:                                                      │
│      招架(parry) 剑法(sword)                                     │ok
├─────────────────────────────────┤

也就是说,你要用“│特殊技能:                                                      │”做个开启触发;再用“├─────────────────────────────────┤”做个关闭触发。
那么“^│\s+(.+?)\s+│$”怎么用呢?就用脚本function *****(name, line, wildcards)来提取罗,“if string.find(line,"招架") ~= nil then”。
后面的你会做的啦。

killunix 发表于 2010-8-21 19:20:24

原帖由 hba 于 2010-8-21 07:06 PM 发表 http://www.pkuxkx.com/forum/images/common/back.gif
这么说吧,你要弄这个复杂的,你有没有考虑过一些特例,比如说侠客岛的skills是不能练习的,辟邪剑法在500级以内是不能练习的,乾坤大挪移是不能练习的,等等。

真要弄上面的正则的话,我这有个方法。

正则是^ ...
做个table,把特殊的放到table里,如果然后剔除出去。

killunix 发表于 2010-8-21 19:21:37

原帖由 lzkd 于 2010-8-21 06:56 PM 发表 http://www.pkuxkx.com/forum/images/common/back.gif


一个id只要设置一次就可以了,然后就保存下来,以后就一直用那个了,哪里有这么麻烦
你那个2.1修改版,我按你的提示在方丈楼#lingwu-damo,抱一大堆错,要么球要去跳楼,怎么设置?

lzkd 发表于 2010-8-21 19:29:18

原帖由 killunix 于 2010-8-21 07:21 PM 发表 http://www.pkuxkx.com/forum/images/common/back.gif

你那个2.1修改版,我按你的提示在方丈楼#lingwu-damo,抱一大堆错,要么球要去跳楼,怎么设置?

把出错信息贴一下

killunix 发表于 2010-8-21 19:34:49

回复 8楼 的帖子

达摩院
    九块干粮(Gan liang)
    十个牛皮酒袋(Jiudai)
    这里明显的出口是 up、southdown 和 north。
>
                            禅院               
                           |   
                         达摩院二楼            
                           〓   
                           达摩院            
达摩院二楼
Run-time error
World: 领悟技能 2.1 版
Immediate execution
:103: attempt to perform arithmetic on a nil value
stack traceback:
      :103: in function 'lingwu'
      :4: in main chunk
Error context in script:
99 :for i = 1,#basic do
100 :          if basic == "force" then ---判断是不是有force
101 :                  force_special = special----取得特殊内功的名称
102 :                  force_special = Replace(force_special, "-", "_", true)
103*:                  if GetVariable("skills_force")*1 <= GetVariable("skills_"..force_special)*1 then ---force 的等级比 特殊内功低
104 :                        have_force = 1--这是maper设置的,取消掉
105 :                        min_skill_en = "force"
106 :                        break         --跳出for循环
107 :                  end
    朝廷八品官员 清兵千总「粪煨校尉」莫挡(Modang)

xiaoxiaoxue 发表于 2010-8-21 19:44:19

晕了。看不懂
页: [1] 2
查看完整版本: 正则请教