Let's see: spans are to keep printing in the same line, if you want two lines you need to use divs:
<?php
function cust_resize_currency( $currencyFormat) {
$currency = preg_replace('~[\d\.,]~u', '', $currencyFormat);
$value = preg_replace('~[^\d\.,]~', '', $currencyFormat);
$currencyFormat = '<div class="value">'.$value.'</div>';
$currencyFormat .= '<div class="symbol">'.$currency.'</div>';
return $currencyFormat;
}
osc_add_filter('item_price', 'cust_resize_currency');
?>
Then you may stylize .value and .symbol to your liking. But take into account that two lines might work well on Ad view but maybe not so well on search lists. You can use osc_is_ad_page() and osc_is_search_page() to adapt the code to each case.
Regards