1
分隔的unix语句我有一个包含几个unix语句的字符串,并加上(,), ||, &&, |
。我想按它们在unix命令行中评估的顺序将它们分成数组(嵌套?)。我最好希望他们有一个前缀符号,但任何事情都可以。分离出由((,),||,&&,|`
像
a --foo "b|a||r" && a -b || (a || a) | c | d
应该成为
["|", ["|", ["||", ["&&", "a --foo \"b|a||r\"", "a -b"], ["||", "a", "a"]], "c"], "d"]
(真的想给这涉及到所有可能性的例子。
我应该如何看待这一点?
我能理解大多数流行的高级(OOP)语言(ruby,python,等等),甚至伪码都会有所帮助。
我不认为这将能够解析'猫“a && b”|回声'正确? – user1527166 2012-08-09 12:42:27
@ user1527166:这应该在*标记化*步骤中处理,即将字符串拆分为简单单元时:'''之间的东西应该完全标记为字符串。 – Heinzi 2012-08-09 12:43:30
嗯,还有一件事情在我尝试之前,它可以处理'猫'一个\“B \”“'?(即,\”将转义一个引号,而不是结束字符串)。 – user1527166 2012-08-09 12:48:54