[Dbix-class] Re: [Templates] Replace with case insensitive

Emmanuel Quevillon tuco at pasteur.fr
Mon Mar 3 11:19:58 GMT 2008


Emmanuel Quevillon wrote:
> Harald Joerg wrote:
>> Emmanuel Quevillon writes:
>>
>>> Hi,
>>>
>>> I am using TT to render DB output from search query box.
>>> As I allow insensitive search, I'd like to bold the search
>>> term in the output html page.
>>> I can do it using replace vmethod but I did not find any
>>> insensitive option to render it:
>>>
>>> [% entry.dbid.replace(query, "<b>$query</b>") %]
>>> If the query is  "foo" and the db value is "Foo", the
>>> replace doe snot work.
>>> Does it exist a way to allow this functionality?
>>
>> Yep!
>>
>> The search string of the replace vmethod can contain all modifiers
>> which are allowed in perl itself.  The only additional trick you need
>> to use is to interpolate your variable into the regular expression:
>>
>> [% entry.dbid.replace("(?i:$query)", "<b>$query</b>") %]
>>
>> You did already take care for oddities like pattern metacharacters in
>> your query variable, did you? ;-)
> Hi Harald,
> 
> Thanks for your help.
> Also is there a possibility to $1 etc in replace method?
> Something like:
> [% entry.dbid.replace("(?i:$query)", "<b>$1</b>") %]
> 
> cheers
> 
> Emmanuel
> 
Sorry replied to wrong list...

-- 
-------------------------
Emmanuel Quevillon
Biological Software and Databases Group
Institut Pasteur
+33 1 44 38 95 98
tuco at_ pasteur dot fr
-------------------------



More information about the DBIx-Class mailing list