PregMatch: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
Fernando187 (talk | contribs) (Remove obsolete Requirements section) |
||
(9 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
{{Server client function}} | {{Server client function}} | ||
{{New items| | {{New items|3.0135|1.3.5| | ||
This function returns all matches. | This function returns all matches. | ||
}} | }} | ||
{{Warning|When declaring a pattern string in quotes, the backslash character should be doubled up. e.g. "\\(" will match a single bracket.}} | |||
{{Warning|Multiline flag does not work correctly}} | |||
==Syntax== | ==Syntax== | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
table pregMatch ( string base, string pattern, | table pregMatch ( string base, string pattern [, int/string flags = 0, int maxResults = 100000 ] ) | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Line 15: | Line 16: | ||
===Optional Arguments=== | ===Optional Arguments=== | ||
*'''flags:''' Conjuncted value that contains flags ( 1 - ignorecase, 2 - multiline, 4 - dotall, 8 - | *'''flags:''' Conjuncted value that contains flags ( 1 - ignorecase, 2 - multiline, 4 - dotall, 8 - extended, 16 - unicode ) or ( i - Ignore case, m - Multiline, d - Dotall, e - Extended, u - Unicode ) | ||
*'''maxResults:''' Maximum number of results to return | |||
===Returns=== | ===Returns=== | ||
Returns | Returns a ''[[table]]'' if one or more match is found, ''false'' otherwise. | ||
==Example== | ==Example== | ||
Line 31: | Line 34: | ||
Match: 2, hello | Match: 2, hello | ||
]] | ]] | ||
for i, v in ipairs( pregMatch( | for i, v in ipairs( pregMatch( "hello hello", "(hello)" ) ) do | ||
outputDebugString( | outputDebugString( "Match: " .. i .. ", " .. v ); | ||
end | end | ||
end | end | ||
) | ); | ||
addCommandHandler( 'example2', | addCommandHandler( 'example2', | ||
Line 42: | Line 45: | ||
Will print: | Will print: | ||
Match: 1, somebodyWWw | Match: 1, somebodyWWw | ||
Match: 2, | Match: 2, 228 | ||
]] | ]] | ||
for i, v in ipairs( pregMatch( "somebodyWWw\n228", "([a-z0-9]+)", | for i, v in ipairs( pregMatch( "somebodyWWw\n228", "([a-z0-9]+)", "im" ) ) do | ||
outputDebugString( | outputDebugString( "Match: " .. i .. ", " .. v ); | ||
end | end | ||
end | end | ||
) | ); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
</section> | </section> | ||
== | ==Changelog== | ||
{{ | {{ChangelogHeader}} | ||
{{ChangelogItem|1.5.0-9.07315|Added flag "u" in regular expressions}} | |||
==See Also== | ==See Also== | ||
{{Utility_functions}} | {{Utility_functions}} |
Latest revision as of 17:11, 7 November 2024
This function returns all matches.
Syntax
table pregMatch ( string base, string pattern [, int/string flags = 0, int maxResults = 100000 ] )
Required Arguments
- base: The base string for replace.
- pattern: The pattern for match in base string.
Optional Arguments
- flags: Conjuncted value that contains flags ( 1 - ignorecase, 2 - multiline, 4 - dotall, 8 - extended, 16 - unicode ) or ( i - Ignore case, m - Multiline, d - Dotall, e - Extended, u - Unicode )
- maxResults: Maximum number of results to return
Returns
Returns a table if one or more match is found, false otherwise.
Example
Click to collapse [-]
Shared ( client and server )Some examples:
addCommandHandler( 'example', function( ) --[[ Will print: Match: 1, hello Match: 2, hello ]] for i, v in ipairs( pregMatch( "hello hello", "(hello)" ) ) do outputDebugString( "Match: " .. i .. ", " .. v ); end end ); addCommandHandler( 'example2', function( ) --[[ Will print: Match: 1, somebodyWWw Match: 2, 228 ]] for i, v in ipairs( pregMatch( "somebodyWWw\n228", "([a-z0-9]+)", "im" ) ) do outputDebugString( "Match: " .. i .. ", " .. v ); end end );
Changelog
Version | Description |
---|
1.5.0-9.07315 | Added flag "u" in regular expressions |
See Also
- addDebugHook
- base64Decode
- base64Encode
- debugSleep
- decodeString
- encodeString
- fromJSON
- generateKeyPair
- getColorFromString
- getDevelopmentMode
- getDistanceBetweenPoints2D
- getDistanceBetweenPoints3D
- getEasingValue
- getNetworkStats
- getNetworkUsageData
- getPerformanceStats
- getRealTime
- getTickCount
- getTimerDetails
- getTimers
- getFPSLimit
- getUserdataType
- getVersion
- gettok
- isTransferBoxVisible
- setTransferBoxVisible
- hash
- inspect
- interpolateBetween
- iprint
- isOOPEnabled
- isTimer
- killTimer
- md5
- passwordHash
- passwordVerify
- pregFind
- pregMatch
- pregReplace
- removeDebugHook
- resetTimer
- setDevelopmentMode
- setFPSLimit
- setTimer
- ref
- deref
- sha256
- split
- teaDecode
- teaEncode
- toJSON
- tocolor
- getProcessMemoryStats
- utfChar
- utfCode
- utfLen
- utfSeek
- utfSub
- bitAnd
- bitNot
- bitOr
- bitXor
- bitTest
- bitLRotate
- bitRRotate
- bitLShift
- bitRShift
- bitArShift
- bitExtract
- bitReplace