diff --git a/addons/common/XEH_PREP.hpp b/addons/common/XEH_PREP.hpp index d016ab26d6..9da48c3993 100644 --- a/addons/common/XEH_PREP.hpp +++ b/addons/common/XEH_PREP.hpp @@ -51,6 +51,7 @@ PREP(dropBackpack); PREP(endRadioTransmission); PREP(eraseCache); PREP(errorMessage); +PREP(escapeRegex); PREP(findUnloadPosition); PREP(firedEH); PREP(fixCollision); diff --git a/addons/common/functions/fnc_escapeRegex.sqf b/addons/common/functions/fnc_escapeRegex.sqf new file mode 100644 index 0000000000..adaa8bb557 --- /dev/null +++ b/addons/common/functions/fnc_escapeRegex.sqf @@ -0,0 +1,20 @@ +#include "script_component.hpp" +/* + * Author: LinkIsGrim + * Escapes special characters used in regex from a string + * + * Arguments: + * 0: String + * + * Return Value: + * Safe string + * + * Example: + * "\Q.*?AK-15.*?\E" call ace_common_fnc_escapeRegex + * + * Public: Yes + */ +params [["_string", "", [""]]]; + +// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions#escaping +_string regexReplace ["[.?*+^$[\]\\(){}|-]/gio", "\\$&"]