regexFind: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - "Regular Expression (Regex)" to "Strings - Regular Expression")
m (Fix)
Line 16: Line 16:
|p2= pattern: [[String]] - Format [[:Category:Command Group: Strings - Regular Expression|regex pattern]]
|p2= pattern: [[String]] - Format [[:Category:Command Group: Strings - Regular Expression|regex pattern]]


|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) has to be in range 0..''haystack''Length


|r1= [[Array]] of arrays. Each array in format:
|r1= [[Array]] of arrays. Each array in format:

Revision as of 18:59, 13 July 2021

Hover & click on the images for description
Only available in Development branch(es) until its release with Arma 3 patch v2.06.

Description

Description:
Returns all all matches found with given pattern in given haystack and their offset.
Groups:
Strings - Regular Expression

Syntax

Syntax:
haystack regexFind [pattern, startOffset]
Parameters:
haystack: String
pattern: String - Format regex pattern
offset: Number - (Optional, default: 0) has to be in range 0..haystackLength
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