Overrides AbstractString::snake
public function snake() : static { $str = $this->camel(); $str->string = mb_strtolower(preg_replace([ '/(\\p{Lu}+)(\\p{Lu}\\p{Ll})/u', '/([\\p{Ll}0-9])(\\p{Lu})/u', ], '\\1_\\2', $str->string), 'UTF-8'); return $str; }