0
我试图检查字符串是否在使用RegEx的AutoHotKey脚本中。RegEx在字符串中找到字符串后提取名称
如果我的字符串是这样的文件路径:
G:\htdocs\projects\webdevapp\app\folder\file.php
然后我需要提取webdevapp
部分。
从AutoHotkey的文档也给出了这个例子,将找到的值存储到一个变量正则表达式的命令:
; Returns 1 and stores "XYZ" in SubPat1.
FoundPos := RegExMatch("abcXYZ123", "abc(.*)123", SubPat)
所以理论上的东西类似下面这样除了正则表达式的部分就需要改变...
FoundPos := RegExMatch("G:\htdocs\projects\webdevapp\app\folder\file.php", "G:\htdocs\projects\(.*)\app\folder\file.php", DomainNameVar)
任何帮助从文件路径中提取该域名到AutoHotKey中的变量?
它基本上需要检查,如果字符串以G:\htdocs\projects\
开始,如果它不那么点之后抓住任何字符,直到出现下一个\
我不熟悉AuthoHotKey。什么是'FoundPos:= RegExMatch(“G:\ htdocs \ projects \ webdevapp \ app \ folder \ file.php”,“G:\ htdocs \ projects \(。*)\ app \ folder \ file.php” “,DomainNameVar)'(您可能希望将其纳入问题以供参考)。在许多系统中,“\”可能是一个特殊字符,所以你可能想尝试'FoundPos:= RegExMatch(“G:\\ htdocs \\ projects \\ webdevapp \\ app \\ folder \\ file.php”,“ G:\\ htdocs \\ projects \\(。*)\\ app \\ folder \\ file.php“,DomainNameVar)' – Attilio
@Atiltil我将更新问题作为这个部分'\ app \ folder \ file.php '不应该在正则表达式中,因为它对每个字符串都是不同的。我gort这个正则表达式测试,以匹配所有的东西,直到我需要的字符串结尾,如果我只能得到结果从它删除第一部分'G:\\ htdocs \\ projects \\ [^ \\] *'匹配G:\ htdocs \ projects \ webdevapp \ app \ folder \ file.php演示文件 - https://regex101.com/r/rFQRbT/1 – JasonDavis