找回密码
 加入
搜索
查看: 2041|回复: 8

[AU3基础] 求一正则 提取 123Of-34ce

[复制链接]
发表于 2019-11-7 16:00:37 | 显示全部楼层 |阅读模式
$Filename='099-申-宇-123Of-34ce-10元-静-黑'
$Match=StringRegExp($Filename, '.*?[宇|么]-(.*?)-[\d+].*',3)
If $Match<>0 Then ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $Filename = ' & $Match[0] & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console
 楼主| 发表于 2019-11-7 16:02:07 | 显示全部楼层
我想得到123of-32ce 但是却得到123of
发表于 2019-11-7 16:07:24 | 显示全部楼层
[宇么]-(.*?)-\d+元
 楼主| 发表于 2019-11-7 16:14:11 | 显示全部楼层

但是 有些情况下没有 元?
像这种 得到的还是123of
099-申-宇-123Of-34ce-10-静-黑
发表于 2019-11-7 16:18:22 | 显示全部楼层
Mixrelax 发表于 2019-11-7 16:14
但是 有些情况下没有 元?
像这种 得到的还是123of
099-申-宇-123Of-34ce-10-静-黑

所以 提问就应该将可能的情况尽量都描述出来,免得打乒乓球
[宇么]-([^-]+-[^-]+)
 楼主| 发表于 2019-11-7 16:22:51 | 显示全部楼层
afan 发表于 2019-11-7 16:18
所以 提问就应该将可能的情况尽量都描述出来,免得打乒乓球

知道了afan老师,还有最后一个球我要打回去,等着接
就是有些情况下它没有前面的[099-申-宇-] 如何将它括起来 加个?号呢?
123Of-34ce-10-静-黑
用这个正则 出不来结果
发表于 2019-11-7 16:52:29 | 显示全部楼层
([^-]+-[^-]+)-[^-]+-[^-]+-[^-]+$
 楼主| 发表于 2019-11-7 17:06:24 | 显示全部楼层
本帖最后由 Mixrelax 于 2019-11-7 17:08 编辑

原来正则 不支持运算
$Match=StringRegExp('099-申-么-123Of34ce-210-静-黑', '([^-]+-[^-]+)-[^-]+-[^-]+-[^-]+$',1)
$taobaoID=StringRegExpReplace($Match[0], '[宇么]-(.*?)','$1')
ConsoleWrite('@@ Debug(' & @ScriptLineNumber & ') : $taobaoID = ' & $taobaoID & @CRLF & '>Error code: ' & @error & @CRLF) ;### Debug Console

来个 正则替换 过滤掉正则后的结果 问题就此解决。谢谢afan老师的耐心指导。

发表于 2019-11-7 18:20:06 | 显示全部楼层
Mixrelax 发表于 2019-11-7 17:06
原来正则 不支持运算
$Match=StringRegExp('099-申-么-123Of34ce-210-静-黑', '([^-]+-[^-]+)-[^-]+-[^ ...

你这又变了…… 让你贴出尽量多的情况看来是不指望了。
就目前的这四五种情况而言,通用的
\w+-\w+
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-23 17:29 , Processed in 0.080435 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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