onilopic/parenthesis-checker

检查字符串中的闭括号

1.0.0 2022-09-03 17:51 UTC

This package is auto-updated.

Last update: 2024-09-04 09:18:01 UTC


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