language: Perl (perl 5.16.2)
date: 262 days 14 hours ago
link:
visibility: public
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
my @lines = <main::DATA>;
 
foreach my $line (@lines) {
  chomp($line);
  print "[" . (($line =~ m/(?=.*?(?<!@ )(\b\w+\b)).*\(@.*\1.*\)/)? "yes" : "no") . "]\t$1\t$line\n";
}
 
__DATA__
abc (@ abc )
abc (@ (& abc ) )
abc (& def (@ abc ) )
(& (& abc def ) (@ abc ) )
(& def (& abc ) (@ abc ) )
abc
(@ abc )
abc (@ def )
abc (& abc)
(@ abc ) abc
(@ abc ) (@ abc )