ngiusti/random-string-generator

基于给定模式生成随机字符串

v1.0.0 2017-10-29 16:30 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:43:01 UTC


README

基于给定字符串模式生成随机字符串

安装

可以通过将 random-string-generator 添加到 composer.json 文件中依赖列表来使用此包,如下所示:

composer require ngiusti/random-string-generator

使用方法

接受的字符串模式

使用 l 表示小写字母 a 到 z

使用 L 表示大写字母 A 到 Z

使用 d 表示数字 0 到 9

使用 p 表示标点符号

标点符号是以下组中的任何字符

!, ", #, $, %, &, ', (, ), *, +, ,, -, ., /, :, ;, <, =, >, ?, @, [, \, ], ^, _, {, |,}, ~`

生成包含 2 个小写字母后跟 2 个数字的字符串。
use RandomStringGenerator\RandomStringGenerator;

$generator = new RandomStringGenerator();
$generator->generate('lldd'); // "ol68"
生成包含 2 个大写字母的字符串。
use RandomStringGenerator\RandomStringGenerator;

$generator = new RandomStringGenerator();
$generator->generate('LL'); // "VR"
生成包含 2 个标点符号的字符串。
use RandomStringGenerator\RandomStringGenerator;

$generator = new RandomStringGenerator();
$generator->generate('pp'); // "?!"

分隔符

除了 lLdp 之外,任何其他字符都被视为分隔符。因此,模式 -dl? 被解释为:一个连字符后跟一个随机数字,后跟一个随机小写字母,后跟一个问号。

生成包含 2 个字母后跟一个连字符的字符串。
use RandomStringGenerator\RandomStringGenerator;

$generator = new RandomStringGenerator();
$generator->generate('ll-'); // "yz-"

转义

为了生成包含字符 lLdp 作为分隔符的字符串,您需要使用两次反斜杠来转义它。

生成包含 2 个数字后跟字母 lLdp 的字符串。
use RandomStringGenerator\RandomStringGenerator;

$generator = new RandomStringGenerator();
$generator->generate('dd\\l\\L\\d\\p'); // "39lLdp"