drunk 发表于 2011-9-30 18:29:35

本帖最后由 drunk 于 2011-9-30 18:30 编辑

回复 14# elexy


\w+(?=\s*@)

xms77 发表于 2011-9-30 19:21:35

回复 1# elexy
CPU\s+(\S+)\s+@

zcool321 发表于 2011-9-30 22:55:50

如果都在CPU和@之前 可以用CPU([\w|\W]*?)@软后trim把空格去了

netegg 发表于 2011-10-1 04:01:04

#include<array.au3>
Local $cpu0= "Pentium(R) Dual-Core CPU   E5700    @ 3.00GHz"
Local $cpu = stringsplit($cpu0,'cpu ')
_arraydisplay($cpu, ' ')

elexy 发表于 2011-10-1 08:41:43

本帖最后由 elexy 于 2011-10-1 08:44 编辑

看看下面的那个更适合你!推荐最后一个或者或者
gzh888666 发表于 2011-9-30 16:50 http://www.autoitx.com/images/common/back.gif

谢谢高手 (\w\d+)(?=\h+\@)   挺合适,可以做到只要后面有 @ 就能识别出来,无论前面是不是有 CPU 字符    且没有空格存在,赞一个

elexy 发表于 2011-10-1 08:45:37

drunk 改进的 \w+(?=\s*@)验证成功,且很短,历害历害!

17楼 xms77 的 CPU\s+(\S+)\s+@   也可以,不过需要前面有 CPU 字符存在

elexy 发表于 2011-10-1 13:47:27

问题更新Local $cpu0= "Intel(R) Core2(tm)I7-2630QM    @ 3.00GHz"
$exp = StringRegExp($cpu0,'\w+(?=\s*@)',1)
MsgBox(0,$cpu0,$exp)上述正则只能获取到 2630M如何改进一下获取I7-2630QM

xms77 发表于 2011-10-1 21:19:42

本帖最后由 xms77 于 2011-10-1 21:30 编辑

回复 21# elexy
原来还有没有CPU字符的情况啊?不知道!如果用这个呢怎么样啊? \s+(\S+)\s+@
如果CPU型号的字符串中有空格,就失效了,不知道有木有这种情况啊?

gzh888666 发表于 2011-10-1 21:45:52

下一次确定了问题再来问,说CPU肯定出现,现在又变了!不过貌似更简单!

本帖最后由 gzh888666 于 2011-10-1 21:48 编辑

问题更新上述正则只能获取到 2630M如何改进一下获取I7-2630QM
elexy 发表于 2011-10-1 13:47 http://www.autoitx.com/images/common/back.gif    (\S+)\h+@

elexy 发表于 2011-10-2 09:16:14

回复elexy
原来还有没有CPU字符的情况啊?不知道!如果用这个呢怎么样啊? \s+(\S+)\s+@
如果CPU型号的 ...
xms77 发表于 2011-10-1 21:19 http://www.autoitx.com/images/common/back.gif

CPU简明型号中不会有空格的,呵呵,谢谢你!测试通过,
新出的INTEL CPU格式是这样的   .......空格+型号+空格+@.....

“CPU字符有时候有时候没有,用空格判断最准了”

elexy 发表于 2011-10-2 09:17:54


gzh888666 发表于 2011-10-1 21:45 http://www.autoitx.com/images/common/back.gif

谢谢,很精简,历害~

fyq 发表于 2013-2-5 09:06:43

好学习,天天向上
页: 1 [2]
查看完整版本: [已解决]识别出CPU简明型号的正则