3v4l.org - online PHP & HHVM shell, execute code in 100+ different versions!

<?php function sanitize_sentence($string) { $pats = array( '/([.!?]\s{2}),/', # Abc. ,Def '/\.+(,)/', # ......, '/(!|\?)\1+/', # abc!!!!!!!!, abc????????? '/\s+(,)/', # abc , def '/([a-zA-Z])\1\1/'); # greeeeeeen $fixed = preg_replace($pats,'$1',$string); $fixed = preg_replace('/,(?!\s)/',', ',$fixed); $fixed = preg_replace( '/([!?,.])(\S)/', '$1 $2', $fixed); $fixed = preg_replace( '/[^a-zA-Z0-9!?.]+$/', '.', $fixed); return $fixed; } echo sanitize_sentence('hello!!!!!!there should be a space after the exclamation mark.right???????yes.right,');
Output for 4.3.0 - 5.6.0, php7@20140507 - 20140901, hhvm-3.0.1 - 3.2.0
hello! there should be a space after the exclamation mark. right? yes. right.