There is a common Regex used to slugify urls ~[^\\pL\d]+~u
but what does the\\pL
in the first preg_replace()
mean?
Here are some examples:
\\pL is a Unicode property shortcut. It can also be written as as \p{L} or \p{Letter} . It matches any kind of letter from any language.
A regular expression (shortened as regex or regexp; sometimes referred to as rational expression) is a sequence of characters that specifies a search pattern in text. Usually such patterns are used by string-searching algorithms for "find" or "find and replace" operations on strings, or for input validation.
This character class \p{javaMirrored} matches upper case letters. This class matches the characters which returns true when passed as a parameter to the isMirrored() method of the java.
A repeat is an expression that is repeated an arbitrary number of times. An expression followed by '*' can be repeated any number of times, including zero. An expression followed by '+' can be repeated any number of times, but at least once.
\\pL
is a Unicode property shortcut. It can also be written as as\p{L}
or \p{Letter}
. It matches any kind of letter from any language.
\\pL
is a shorthand for \\p{L}
reference
In addition to the standard notation, \p{L}, Java, PHP, Perl, PCRE and the JGsoft engine allow you to use the shorthand \pL. The shorthand only works with single-letter Unicode properties. \pLl is not the equivalent of \p{Ll}. It is the equivalent of \p{L}l which matches Al or àl or any Unicode letter followed by a literal l.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With