在二维中是否有任何好的(或至少有趣但有缺陷的)正则表达式的类比?
在一个维度上,我可以写出像/ aaac?(bc)* b?aaa /来快速拉出一个交替bs和cs的区域,边界至少为3。也许同样重要的是,我可以在一个月后回来,看看一下它寻找什么。
我发现自己在2d中编写类似问题的自定义代码(一些更复杂/约束),并且有一个更简洁和标准化的符号,即使我必须自己编写引擎。
第二个例子可能被称为“查找”。目标是找到一个3列或更多的列作为,一个b由3个或更多个括起来,如下面的三个或更多。它应该匹配:
..7...hkj.k f 7...a h o j ----a-------- j .a,g- 8 9 .aaabaaaaa7 j k .a,g- h j hh a----? j a hjg
并且可以写为[b ^(a {3})v(a {3})>(a {3})<(a {3})]或... 建议?
不是一个正则表达式的专家,但发现问题有趣,我环顾四周,发现这个有趣的
blog entry.尤其是用于定义2D正则表达式的语法看起来很吸引人。连接在那里的纸可能比我更能告诉你。
从评论更新:这是到主要作者的页面的链接,您可以下载链接的文件“二维语言”:http://www.mat.uniroma2.it/~giammarr/Research/pubbl.html