我正在獲取啓動應用程序的列表,並且希望僅獲取在啓動時運行的應用程序的路徑。啓動應用程序的列表還包含傳遞給應用程序的參數,這些參數的格式不同;實例是從字符串中查找文件的路徑
C:\程序文件(x86)\互聯網下載管理\ IDMan.exe/ONBOOT
「C:\ Program Files文件\過程哈克2 \ ProcessHacker.exe」 -hide
「C:\ Program Files \ CCleaner \ CCleaner64.exe」/ MONITOR
「C:\ Program Files(x86)\ Google \ Chrome \ Application \ chrome.exe」--no-startup-window/prefetch: 5
「C:\ Program Files(x86)\ GlassWire \ glasswire.exe 「-hide
C:\ Program Files文件\ IDT \ WDM \ sttray64.exe
我想使用正則表達式如下
Regex.Matches(input, "([a-zA-Z]*:[\\[a-zA-Z0-9 .]*]*)");
請指導我怎麼可以只提取應用程序路徑忽略所有參數和其他啓動命令。
爲什麼不使用字符串操作?例如,用「/」分隔,先取出然後再用「 - 」分開,然後取第一個...所有參數都有標記。 – Emad
@Emad有可能會遺漏一些拆分器,這可能會導致問題 – WiXXeY
由於在Windows中大多數或所有的可執行文件都具有「.exe」擴展名,因此您可以嘗試查找「.exe」(.exe和一個額外的空格)以及然後提取離開參數的路徑。 – sameerkn