I\'m looking to replace all instances of spaces in urls with %20. How would I do that with regex?
Thank you!
You've got several options how to do this, either:
str_replace() when replacing multiple charactersAssuming that you want to replace "\t" and " " with "%20":
$replace_pairs = array(
"\t" => '%20',
" " => '%20',
);
return strtr( $text, $replace_pairs)
You've got few options here, either replacing just space ~ ~, again replacing space and tab ~[ \t]~ or all kinds of spaces ~\s~:
return preg_replace( '~\s~', '%20', $text);
Or when you need to replace string like this "\t \t \t \t" with just one %20:
return preg_replace( '~\s+~', '%20', $text);
I assumed that you really want to use manual string replacement and handle more types of whitespaces such as non breakable space ( )