Milzu Lempis Posted November 9, 2009 Report Share Posted November 9, 2009 gribēju uzzināt domas par to kā vislabāk risināt šādu situāciju: meklēšanas logā ierakstam lietotāja meklējamos parametrus piem. "jān str". ar ajax atlasās vajadzīgie ieraksti un tiek izdots list view ar atrastajiem rezultātiem. gribētos šajos rezultātos boldēt meklētos - jānis strēle. daru to ar replace uz strong. bet ja es pirmo izmainu "jān", tad mainot "str" man izmaina arī strong tagu. šī problēma ir aprakstīta arī http://lv.php.net/manual/en/function.preg-replace.php pie lietotāju piezīmēm: info at gratisrijden dot nl 02-Oct-2009 05:48 kādā secībā, veidā un ar kādiem principiem vislabāk šo realizēt Quote Link to comment Share on other sites More sharing options...
marcis Posted November 9, 2009 Report Share Posted November 9, 2009 Priekš kam tur būtu vajadzīgs regex? echo str_replace($str, '<strong>'.$str.'</strong>', $text); Quote Link to comment Share on other sites More sharing options...
Milzu Lempis Posted November 9, 2009 Author Report Share Posted November 9, 2009 jā nav vajadzīgs regex, bet arī šis neder, jo ja ir vairāki replace, tad 2 reizi mainot "str" izmaina arī manu strong tagu. strtr varētu, bet tam nav case insensitive. Quote Link to comment Share on other sites More sharing options...
marcis Posted November 9, 2009 Report Share Posted November 9, 2009 Tad gan regex varētu palīdzēt.. Ideja tāda - jārepleiso viss uzreiz, nevis pa vienam $str = 'jān str'; $str = preg_replce("/(".str_replace(' ', '|', $str).")/i", '<strong>$1</strong>', $str); Quote Link to comment Share on other sites More sharing options...
PheliX Posted November 9, 2009 Report Share Posted November 9, 2009 strtr( 'jānis strēle', array( 'str' => '<strong>str</strong>', 'jān' => '<strong>jān</strong>' ) ); // => '<strong>jān</strong>is <strong>str</strong>ēle' Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.