Difference between revisions of "regexFind"

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "\|game([0-9]) ?= (.+) \|version([0-9]) ?= (.+) " to "|game$1= $2 |version$3= $4 ")
(formatting)
Line 4: Line 4:
 
|version1= 2.05
 
|version1= 2.05
  
|descr= Offsets are relative to haystack start, ignoring the provided startOffset. startOffset being <0 or >= count hayStack will trigger a script error and return empty array
+
|descr= Returns all all matches found with given ''pattern'' in given ''haystack'' and their offset.
  
 
|gr1= Regular Expression (Regex)
 
|gr1= Regular Expression (Regex)
  
 
|s1= haystack [[{{PAGENAMEE}}]] [pattern, startOffset]
 
|s1= haystack [[{{PAGENAMEE}}]] [pattern, startOffset]
 
|r1= [[match1, offset1], [match2, offset2], ... [matchN, offsetN]]
 
  
 
|p1= haystack: [[String]]
 
|p1= haystack: [[String]]
Line 17: Line 15:
  
 
|p3= offset: [[Number]] - (Optional, default: 0) The ''offset'' has to be smaller then {{ic|[[count]] haystack}} and {{ic|>{{=}} 0}}
 
|p3= offset: [[Number]] - (Optional, default: 0) The ''offset'' has to be smaller then {{ic|[[count]] haystack}} and {{ic|>{{=}} 0}}
 +
 +
|r1= [[Array]] of arrays. Each array in format:
 +
* 0: [[String]] - Match
 +
* 1: [[Number]]  - Offset of given match relative to ''haystack'' beginning. Provided ''offset'' is ignored
  
 
|x1= <code>"wooKie boOkie cookie" [[{{PAGENAMEE}}]] [".ookie/gio"] {{cc|<nowiki>[["wooKie",0],["boOkie",7],["cookie",14]]</nowiki>}}</code>
 
|x1= <code>"wooKie boOkie cookie" [[{{PAGENAMEE}}]] [".ookie/gio"] {{cc|<nowiki>[["wooKie",0],["boOkie",7],["cookie",14]]</nowiki>}}</code>

Revision as of 10:35, 6 May 2021

-wrong parameter ("arma3dev") defined!-[[:Category:Introduced with arma3dev version 2.05|2.05]]
Hover & click on the images for description

Description

Description:
Returns all all matches found with given pattern in given haystack and their offset.
Groups:
Regular Expression (Regex)

Syntax

Syntax:
haystack regexFind [pattern, startOffset]
Parameters:
haystack: String
pattern: String - Format regex pattern
offset: Number - (Optional, default: 0) The offset has to be smaller then count haystack and >= 0
Return Value:
Array of arrays. Each array in format:
  • 0: String - Match
  • 1: Number - Offset of given match relative to haystack beginning. Provided offset is ignored

Examples

Example 1:
"wooKie boOkie cookie" regexFind [".ookie/gio"] // [["wooKie",0],["boOkie",7],["cookie",14]]
Example 2:
"wooKie boOkie cookie" regexFind [".ookie/i"] // [["wooKie",0]]
Example 3:
"wooKie boOkie cookie" regexFind [".ookie/"] // [["wooKie",0],["boOkie",7],["cookie",14]]
Example 4:
Multiline example:"co1kie2 co2kie" regexFind ["^co.kie$"] // [["co1kie",0],["co2kie",8]]
Example 5:
"I'm a cookie clicker" regexFind ["c(.*?)k(.*?)e/i"] // [["cookie",6],["oo",7],["i",10]]
Example 6:
"I'm a cookie clicker" regexFind ["c(.*?)k(.*?)e"] // [["cookie",6],["oo",7],["i",10],["clicke",13],["lic",14],["",18]]

Additional Information

See also:
regexMatch regexReplace

Notes

Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note

[[Category:Introduced with arma3dev version 2.05]][[ Category: arma3dev: New Scripting Commands | REGEXFIND]][[ Category: arma3dev: Scripting Commands | REGEXFIND]]