Perl error with join

I need to set a variable but from the snip I have below I get what I want but also a warning.

#! /usr/bin/perl
use warnings;

$ad=q{CN=John Doe  159657,OU=Users,OU=City-CT0077,OU=GB,OU=EAF,DC=HHH,DC=abc,DC=com};

$krb = join(q{.},$ad=~ m/dc *= *([a-z]+)/ig),qq{\n};
$krb = lc("$krb");
print "$krb\n";

This will print out what I want but with a warning:

Useless use of a constant in void context at ./krb.pl line 6.
hhh.abc.com

I can do a print such as this with no warning:
print lc join(q{.},$ad=~ m/dc *= *([a-z]+)/ig),qq{\n};

What do I need to change when not just printing this and putting what I need in a variable like above?

Thanks,

bt707Asked:
Who is Participating?

[Webinar] Streamline your web hosting managementRegister Today

x
 
pwustConnect With a Mentor Commented:
just leave out the newline in the composition part of $krb:
$krb = join(q{.},$ad=~ m/dc *= *([a-z]+)/ig);

Open in new window

This newline char is what perl is complaining about within the join command.
0
 
bt707Author Commented:
I had thought the newline was the problem and tried that but still got the same error, but must of not done it right, it worked now with you line.

Thanks,
0
All Courses

From novice to tech pro — start learning today.