$str = 'D\'oh! That purple fruit thing!';
$new_str = '';
for ($index = 0; $index < strlen($str); $index++) {
if ( $str{$index} == "!" ) {
$pos[] = $index;
} else {
$new_str .= $str{$index};
}
}
// и обратно что-то в таком духе
$prev = 0;
$new_str = '';
foreach ( $pos as $position ) {
$new_str .= substr( $str, $prev, $position ) . '!';
$prev = $position;
}
А указанный код "не шустрый"? С чего ты взял?Все просто: текст хранится с уже проставленными знаками ударения, а народу хочется зрелищ в виде кнопочки "stress on/stress off", чтобы можно было выключить и включить ударения. За вариант спасибо - мысли у меня были подобные, но я думал, что есть уже что - то более шустрое на JS
А, ну, если это только для зрелищ, то можно ещё проще - какой-нибудь не отображающийся управляющий символ использовать не по назначению:народу хочется зрелищ
echo $str = 'D\'oh! That purple fruit thing! Where were you yesterday?<br>';
$str = str_replace( "!", "\0", $str);
echo $str;
$str = str_replace( "\0", "!", $str);
echo $str;