onilopic / parenthesis-checker
检查字符串中的闭括号
1.0.0
2022-09-03 17:51 UTC
Requires
- ext-mbstring: *
Requires (Dev)
- phpunit/phpunit: ^9.5
README
条件
返回 true,如果字符串正确 - 所有打开的括号都正确打开和关闭,否则返回 false。字符串可以包含符号 “(“,“)”,“ ”(空格),“\n”(换行符),“\t”(制表符),“\r”(回车符)。如果字符串包含除上述符号之外的任何内容,则您的库应抛出 InvalidArgumentException 异常。
算法(通用)
在任何时候,闭括号的数量不能超过打开的括号的数量。
对于文本中的每个字符,检查它是否是打开的括号;如果是,则将其类型(角括号、圆括号等)添加到堆栈中;如果不是,则检查它是否是关闭的括号;如果是,并且最后一个添加的打开括号与之匹配,则将其从堆栈中移除(找到匹配的括号对);否则,终止算法——找到不正确嵌套的括号。
继续到文本末尾,如果堆栈为空,则文本仅包含正确嵌套的括号。
PHP - Docker
docker build -t php-composer:1.0 . // нужно указать права пользотвателя, чтобы файлы создались не от root docker run --user 1000:1000 -ti --volume $(pwd)/:/app php-composer:1.0 composer install