From f822e807d78c290cf6a7b4472796558622b7db2b Mon Sep 17 00:00:00 2001 From: smiley Date: Wed, 16 Oct 2024 10:22:02 +0200 Subject: [PATCH] :octocat: regex fix (#282) --- src/Data/AlphaNum.php | 2 +- tests/Data/AlphaNumTest.php | 9 +++++++++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/src/Data/AlphaNum.php b/src/Data/AlphaNum.php index 5bcd0ce0e..065b26006 100644 --- a/src/Data/AlphaNum.php +++ b/src/Data/AlphaNum.php @@ -36,7 +36,7 @@ final class AlphaNum extends QRDataModeAbstract{ } public static function validateString(string $string):bool{ - return (bool)preg_match('#^['.self::CHAR_MAP.']+$#', $string); + return (bool)preg_match('/^[A-Z\d %$*+-.:\/]+$/', $string); } public function write(BitBuffer $bitBuffer, int $versionNumber):static{ diff --git a/tests/Data/AlphaNumTest.php b/tests/Data/AlphaNumTest.php index deeeb198f..eeb2c2631 100644 --- a/tests/Data/AlphaNumTest.php +++ b/tests/Data/AlphaNumTest.php @@ -34,6 +34,15 @@ final class AlphaNumTest extends DataInterfaceTestAbstract{ return [ ['ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890 $%*+-./:', true], ['abc', false], + ['ÄÖÜ', false], + [',', true], + ['-', true], + ['+', true], + ['.', true], + ['*', true], + [':', true], + ['/', true], + ['\\', false], ]; }