GetInQuotes: Get string from between quotes: Difference between revisions
From NSIS Wiki
Jump to navigationJump to search
m (Added page author. zukex is a forum user, not a page.) |
(→The Function: Fixed it so it will work with strings starting with a quote, like '"This is in quotes" This is not' (will return This is in quotes)) |
||
Line 21: | Line 21: | ||
Push $R3 | Push $R3 | ||
StrCpy $R2 | StrCpy $R2 -1 | ||
IntOp $R2 $R2 + 1 | IntOp $R2 $R2 + 1 | ||
StrCpy $R3 $R0 1 $R2 | StrCpy $R3 $R0 1 $R2 |
Latest revision as of 09:10, 6 October 2006
Author: Afrow UK (talk, contrib) |
Description
This function was written for zukex in this forum topic. It takes a string from between quotes in another string. If no paired quotes are found, the function will return an empty string.
Usage
Push 'a string containing "quotes"!' Call GetInQuotes Pop $R0 ; = quotes
The Function
Function GetInQuotes Exch $R0 Push $R1 Push $R2 Push $R3 StrCpy $R2 -1 IntOp $R2 $R2 + 1 StrCpy $R3 $R0 1 $R2 StrCmp $R3 "" 0 +3 StrCpy $R0 "" Goto Done StrCmp $R3 '"' 0 -5 IntOp $R2 $R2 + 1 StrCpy $R0 $R0 "" $R2 StrCpy $R2 0 IntOp $R2 $R2 + 1 StrCpy $R3 $R0 1 $R2 StrCmp $R3 "" 0 +3 StrCpy $R0 "" Goto Done StrCmp $R3 '"' 0 -5 StrCpy $R0 $R0 $R2 Done: Pop $R3 Pop $R2 Pop $R1 Exch $R0 FunctionEnd
-Stu