Problem
You may be having trouble with using regex and links in twig/php!
Typical Solution
Generally, You'd want to escape a slash!
Example:
/path/to/resouces/
would look something like this in js:
/\/path\/to\/resources\//
/
=== delimiter
\/
=== escaped slash
This doesn't play nicely with twig!
I figure twig is trying to be smart and escape things for you.
but I'm not really sure whats going on.
Real Solution
(Thankfully, php provides a way to work around this issue.)[https://www.php.net/manual/en/regexp.reference.delimiters.php]
Alternate delimiters:
/foo/
| #foo#
| +foo+
| %foo%
| <foo>
| (foo)
| {foo}
| [foo]
All of the above delimiters are valid!
Applied Solution
This means, if we take our URL:
/path/to/resouces/
We just need to wrap it with a delimiter which isn't used in the string.
Example:
{/path/to/resouces/}
That's it! The regex should work how you'd like it to.
Wrap Up
Regex is weird.
Twigs undocumented behavior is weird.
together they're an afternoon of frustration.
Top comments (1)
Cheers, this pointed me in the right direction! the lack of official documentation is crazy 🤯
I had to format this regex like this to get working in twig
🤢