网页资讯视频图片知道文库贴吧地图采购
进入贴吧全吧搜索

 
 
 
日一二三四五六
       
       
       
       
       
       

签到排名:今日本吧第个签到,

本吧因你更精彩,明天继续来努力!

本吧签到人数:0

一键签到
成为超级会员,使用一键签到
一键签到
本月漏签0次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行补签。
连续签到:天  累计签到:天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
08月09日漏签0天
autohotkey吧 关注:4,706贴子:16,285
  • 看贴

  • 图片

  • 吧主推荐

  • 游戏

  • 4回复贴,共1页
<<返回autohotkey吧
>0< 加载中...

如何用正则匹配如下文本?

  • 只看楼主
  • 收藏

  • 回复
  • bdlengyff
  • 小有名气
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
1、文本为
desk
[desk] -K4
n. 办公桌;服务台;编辑部;(美)讲道台;乐谱架
adj. 书桌的;桌上用的;伏案做的
2、代码为:
FoundPos :=RegExMatch(clipboard,"Oim)(^\w*.*)",match)
MsgBox,,FoundPos,% FoundPos
MsgBox,,单词Match0,% match.Value(0)
MsgBox,,单词Match1,% match.Value(1)
MsgBox,,单词Match2,% Match.Value(2)
v:=0
loop,% match.count()
{
MsgBox,,简单释义,% match.value(v)
v++
}
3、不能匹配每个字符串,只能匹配到第一个单词


  • bdlengyff
  • 小有名气
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
自问自答。通过检索,自己在AHK中用vbscript的正则解决了,AHK与vbscript真实是短小精悍,优势互补,强强联合!


2025-08-09 21:37:32
广告
不感兴趣
开通SVIP免广告
  • bdlengyff
  • 小有名气
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
此外,loop,prase也可以实现相同效果。


  • bdlengyff
  • 小有名气
    4
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
RegexMatches(Haystack,NeedleRegEx)
{
regex := ComObjCreate("VBScript.RegExp") ;利用VBScript.RegExpress进行正则表达式匹配
regex.Global := true ;全局匹配
regex.IgnoreCase := true ;忽略大小写
regex.Pattern := NeedleRegEx ;设置正则表达式模式
stringMatches := regex.Execute(Haystack) ;执行正则表达式
Matches:= Object() ; 每个数组在使用前必须进行初始化
;Matches:= Object() 可以简化构造为 Matches:= []
for match in stringMatches
{
Matches[A_INDEX]:=match.value ;Matches[1]表示匹配的第一项
}
regex:=Nothing
Return Matches ;返回数组
}
;示例:
test:=RegexMatches("12_567","\d+")
;Msgbox % test[1]
;Msgbox % test[2]
for key,value in test
{
msgbox % A_Index " is " value 。
}
参考引用:http://www.ahkcn.net/thread-5912-post-34414.html


登录百度账号

扫二维码下载贴吧客户端

下载贴吧APP
看高清直播、视频!
  • 贴吧页面意见反馈
  • 违规贴吧举报反馈通道
  • 贴吧违规信息处理公示
  • 4回复贴,共1页
<<返回autohotkey吧
分享到:
©2025 Baidu贴吧协议|隐私政策|吧主制度|意见反馈|网络谣言警示