#! perl -slw use strict; use Inline::Files; select OUTPUT; while( ) { s[ ( (?: < [^>]+ > ) | (?: ( ["'] ) (?: (?!\2). ){1,17} \2 ) #"' | (?: [^<"'6]{9,18} (?!;) (?=\b\W) ) #"' | [^<'"]{18} #"' ) \s? ][$1 \n]xg; print; } __DATA__ a line with "some quoted text" less than 18 chars in length and 'some "quoted text" more that 18 chars' a line with 'some quoted text' less than 18 chars in length and "some 'quoted text' more that 18 chars" xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx http://news.bbc.co.uk/1/shared/spl/hi/pop_ups/05/business_detroit_motor_show/html/1.stm/1.stm this is the link I was referring to for( 1 .. 20 ){ $bar = $bop[ 1 ]; print "$bar/$baz,$foo[$baz]" } for(1..20){$bar=$bop[1];print"$bar/$baz,$foo[$baz]"} for(1..20)%7B%24bar%3D%24bop%5B1%5D%3Bprint%22%24bar%2F%20%24baz%2C%24foo%5B%24baz%5D%22%7D for(1..20){$bar=$bop[1];print"$bar/$baz,$foo[$baz]"} __OUTPUT__ a line with "some quoted text" less than 18 chars in length and 'some "quoted text" more that 18 chars ' a line with 'some quoted text' less than 18 chars in length and "some 'quoted text' more that 18 chars " xxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxx xxx http://news.bbc.co .uk/1/shared/spl /hi/pop_ups/05 /business_detroit_ motor_show/html/1 .stm/1.stm this is the link I was referring to for( 1 .. 20 ){ $bar = $bop[ 1 ]; print "$bar/$baz,$foo [$baz]" } for(1..20){$bar =$bop[1];print "$bar/$baz,$foo [$baz]"} for(1..20)%7B %24bar%3D%24bop %5B1%5D%3Bprint%22 %24bar%2F%20%24baz %2C%24foo%5B%24baz %5D%22%7D for(1..20){$bar =$bop[1];print "$bar/$baz ,$foo[$baz ]"}