excel - How to remove text within brackets in a string while still keeping the other text? -


my $book = spreadsheet::read->new(); $book = readdata  ('d:\profiles\jmahroof\desktop\scheduled_build_overview.xls'); $cell = "cd7"; $n = "1"; $send = $book->[$n]{$cell}; $send =~ s/\(/ /g; $send =~ s/\)//g; 

i have above code gets data excel file , picks out text specified cell , removes brackets string. need able remove within brackets including brackets while leaving rest of text. format of string following : text(text)

$send =~ s/\(.*?\)//; 

explained:

s/ search \ escapes bracket comes next seen part of code if not escaped. (.*?\) here searching use non-greedy .*? match last bracket again last bracket escaped \ / begins replace function search / ends search , replace.

so search (*) , replace nothing.

explaing non greedy vs greedy.

.* being greedy match until last ) found

so if have string((substring)end) then s/(.*)// go first ( last ) leaving string

non greedy not, begin first ( first ) leaving stringend) lazy , match ask ( ) greedy match grab everything, if have (string)(())((strings))()()strings)strings)


Comments

Popular posts from this blog

Command prompt result in label. Python 2.7 -

javascript - How do I use URL parameters to change link href on page? -

amazon web services - AWS Route53 Trying To Get Site To Resolve To www -