in reply to Is there an official regex for checking module names?

Nitpicking alert:

You seem to parse packages. But modules are files.

There is a convention to have the whole module included inside an equally named package, but with no guaranty it's respected.

I'm not sure, but it might be possible to require a file which doesn't match your regex for identifiers.

update

more nitpicking:

use utf8 allows extended identifiers, and my test allows umlauts in use MODULE and package NAME

use strict; use warnings; use lib "."; use utf8; use äöü;

# FILE äöü.pm use utf8; package äöü; use strict; use warnings; use Data::Dump qw/pp dd/; warn "äöü included"; 1;
output
C:/Strawberry/perl/bin\perl.exe -w d:/tmp/pm/mod_uni.pl äöü included at äöü.pm line 10. Compilation finished at Tue Feb 8 02:46:11

Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery

Replies are listed 'Best First'.
Re^2: Is there an official regex for checking module names?
by kcott (Archbishop) on Feb 08, 2022 at 03:53 UTC

    G'day Rolf,

    ++ All valid points.

    This was for a $work project and there are certain constraints: one package per module; A::B::C is in .../A/B/C.pm; non-ASCII characters disallowed. I wrote the regex with those constraints in mind.

    — Ken