Согласен, только я в этом плохо разбираюсь, поэтому обратил ваше вниманиеYuS wrote:Ну, это уже не вопрос функционала поиска по условию, а в правильном составлении регэкспа
1 - пример корректной работы правила, 2-3 - нет.
Ок, понятно. Если вдруг, кому-нибудь нужно:Skif_off wrote: Согласен, только я в этом плохо разбираюсь, поэтому обратил ваше внимание
1 - пример корректной работы правила, 2-3 - нет.
Code: Select all
^(?([^\n]{15,})([^.\n]{1,8})[^\n]*?(?([^.\n]+$)[^\n]+|(\.[^.\n]{0,4}))[^.\n]*?$)
Code: Select all
0 "^(Windows\s+(?=95$|98$|NT$|2000$))" "\1=(4,${IF},0)"
Code: Select all
0 "^(Windows\s+)(95|98|NT|2000)$" "\1=(4,${IF},0)"
Code: Select all
(IfWinActive|IfWinNotActive|IfWinExist|IfWinNotExist)
или
(IfWin(?:Not)(?:Active|Exist))
Drugmix wrote:Cкажите, что быстрее:?Code: Select all
(IfWinActive|IfWinNotActive|IfWinExist|IfWinNotExist) или (IfWin(?:Not)(?:Active|Exist))
Code: Select all
IfWin(?:Not)?(?>Active|Exist)
Code: Select all
"^\s*(?:\}\s*)*?(?:(Else)(?:\s*,\s*|\s+|\s*\{\s*)|(.+(?=::))::)?(?:(Try)(?:\s*,\s*|\s+|\s*\{\s*))?\s*(DriveGet)(?:\s*,\s*|\s+)(([^;,\s]|(?<=`),|(?<!\s);|\s(?!\s*?(?:;|$)))+?)(?:\s*,\s*)(List|Cap|Capacity|FS|FileSystem|Label|Serial|Type|Status|StatusCD)(?:\s*,\s*(([^;,\s]|(?<=`),|(?<!\s);|\s(?!\s*?(?:;)))*?)?)?\s*?((?<=\s);.*)?$" "\1=(4,${IF},0) \2=(4,${STR},0) \3=(2,${OP},0) \4=(0,${OP},0) \6=(0,${VAR},0) \7=(0,${TYPE},0) \9=(0,${TYPE},0) \10=(3,${COMM},0)"
Code: Select all
DriveGet, OutputVar, StatusCD, Value
DriveGet, OutputVar, Capacity, Value
Code: Select all
"^\s*(?:\}\s*)*?(?:(Else)(?:\s*,\s*|\s+|\s*\{\s*)|(.+(?=::))::)?(?:(Try)(?:\s*,\s*|\s+|\s*\{\s*))?\s*(DriveGet)(?:\s*,\s*|\s+)(([^;,\s]|(?<=`),|(?<!\s);|\s(?!\s*?(?:;|$)))+?)(?:\s*,\s*)(List|Capacity|Cap|FS|FileSystem|Label|Serial|Type|StatusCD|Status)(?:\s*,\s*(([^;,\s]|(?<=`),|(?<!\s);|\s(?!\s*?(?:;)))*?)?)?\s*?((?<=\s);.*)?$" "\1=(4,${IF},0) \2=(4,${STR},0) \3=(2,${OP},0) \4=(0,${OP},0) \6=(0,${VAR},0) \7=(0,${TYPE},0) \9=(0,${TYPE},0) \10=(3,${COMM},0)"
Code: Select all
content(?=editable)