Тема: AHK: RegEx получить из ini секции ключ, значение и комментирование
Ini:
[General]
Test=123 ; /testКод:
IniRead, OutputVar, % Path_ini, General
Loop, Parse, % OutputVar, `n
If RegexMatch( A_LoopField, "^\s*(?<_key>[^=]*)=(?<_value>.*);(?<_description>.*)", line )
MsgBox, % line_key "`n" line_value "`n" line_descriptionЕсли знак ; не встречается, то код перестает доставать шаблоны.
В Regex вообще не силен, и даже не знаю где посмотреть туториал для чайников. Справка по нему выглядит невероятно пугающее и едва понятной для новичка.
Пробовал сделать шаблон с условием новой строки или пробел (как трактуется пробел тоже не нашел в справке кстати)-
"^\s*(?<_key>[^=]*)=(?<_value>.*);|`n(?<_description>.*)"Не помогает.
Пока проблема решена так:
If (RegexMatch( A_LoopField, "^\s*(?<_key>[^=]*)=(?<_value>.*);(?<_description>[^;].*)", line) = 1 || RegexMatch( A_LoopField, "^\s*(?<_key>[^=]*)=(?<_value>.*)", line) = 1)
MsgBox, % line_key "`n`n" line_value "`n`n" line_description 
