Update functions.php (#5302)

This commit is contained in:
agree 2020-06-16 22:35:51 -04:00 committed by GitHub
parent 87497721c6
commit 0ce0f597f6
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 7 additions and 4 deletions

View File

@ -1708,6 +1708,7 @@ function number_pad($number,$n) {
//converts a string to a regular expression //converts a string to a regular expression
if (!function_exists('string_to_regex')) { if (!function_exists('string_to_regex')) {
function string_to_regex($string, $prefix='') { function string_to_regex($string, $prefix='') {
$original_string = $string;
//escape the plus //escape the plus
if (substr($string, 0, 1) == "+") { if (substr($string, 0, 1) == "+") {
$string = "^\\+(".substr($string, 1).")$"; $string = "^\\+(".substr($string, 1).")$";
@ -1723,9 +1724,11 @@ function number_pad($number,$n) {
} }
} }
//convert N,X,Z syntax to regex //convert N,X,Z syntax to regex
$string = str_ireplace("N", "[2-9]", $string); if (preg_match('/^[NnXxZz]+$/', $original_string)) {
$string = str_ireplace("X", "[0-9]", $string); $string = str_ireplace("N", "[2-9]", $string);
$string = str_ireplace("Z", "[1-9]", $string); $string = str_ireplace("X", "[0-9]", $string);
$string = str_ireplace("Z", "[1-9]", $string);
}
//add ^ to the start of the string if missing //add ^ to the start of the string if missing
if (substr($string, 0, 1) != "^") { if (substr($string, 0, 1) != "^") {
$string = "^".$string; $string = "^".$string;
@ -2162,4 +2165,4 @@ function number_pad($number,$n) {
} }
} }
?> ?>