@@ 463-497 (lines=35) @@ | ||
460 | * @param String $password the password. |
|
461 | * @return Integer number of different character sets in use. |
|
462 | */ |
|
463 | protected function get_charset_size( $password ) { |
|
464 | $size = 0; |
|
465 | ||
466 | // Lowercase a-z. |
|
467 | if ( preg_match( '/[a-z]/', $password ) ) { |
|
468 | $size += 26; |
|
469 | } |
|
470 | ||
471 | // Uppercase A-Z. |
|
472 | if ( preg_match( '/[A-Z]/', substr( $password, 1, -1 ) ) ) { |
|
473 | $size += 26; |
|
474 | } |
|
475 | ||
476 | // Digits. |
|
477 | if ( preg_match( '/\d/', substr( $password, 1, -1 ) ) ) { |
|
478 | $size += 10; |
|
479 | } |
|
480 | ||
481 | // Over digits symbols. |
|
482 | if ( preg_match( '/[!|@|#|$|%|^|&|*|(|)]/', $password ) ) { |
|
483 | $size += 10; |
|
484 | } |
|
485 | ||
486 | // Other symbols. |
|
487 | if ( preg_match( '#[`|~|-|_|=|+|\[|{|\]|}|\\|\|;:\'",<\.>/\?]#', $password ) ) { |
|
488 | $size += 20; |
|
489 | } |
|
490 | ||
491 | // Spaces. |
|
492 | if ( strpos( $password, ' ' ) ) { |
|
493 | $size++; |
|
494 | } |
|
495 | ||
496 | return $size; |
|
497 | } |
|
498 | ||
499 | /** |
|
500 | * Shorthand for getting a character index. |
@@ 481-515 (lines=35) @@ | ||
478 | * |
|
479 | * @return int number of different character sets in use. |
|
480 | */ |
|
481 | protected function get_charset_size( $password ) { |
|
482 | $size = 0; |
|
483 | ||
484 | // Lowercase a-z. |
|
485 | if ( preg_match( '/[a-z]/', $password ) ) { |
|
486 | $size += 26; |
|
487 | } |
|
488 | ||
489 | // Uppercase A-Z. |
|
490 | if ( preg_match( '/[A-Z]/', substr( $password, 1, - 1 ) ) ) { |
|
491 | $size += 26; |
|
492 | } |
|
493 | ||
494 | // Digits. |
|
495 | if ( preg_match( '/\d/', substr( $password, 1, - 1 ) ) ) { |
|
496 | $size += 10; |
|
497 | } |
|
498 | ||
499 | // Over digits symbols. |
|
500 | if ( preg_match( '/[!|@|#|$|%|^|&|*|(|)]/', $password ) ) { |
|
501 | $size += 10; |
|
502 | } |
|
503 | ||
504 | // Other symbols. |
|
505 | if ( preg_match( '#[`|~|-|_|=|+|\[|{|\]|}|\\|\|;:\'",<\.>/\?]#', $password ) ) { |
|
506 | $size += 20; |
|
507 | } |
|
508 | ||
509 | // Spaces. |
|
510 | if ( strpos( $password, ' ' ) ) { |
|
511 | $size ++; |
|
512 | } |
|
513 | ||
514 | return $size; |
|
515 | } |
|
516 | ||
517 | /** |
|
518 | * Shorthand for getting a character index. |