背景:我正在开发一个自定义类正则表达式的URL文件的语法。它的工作是这样的:解析自定义的字符串生成模式语法
- 用户写入的模式,像
"[a-z][0-9]{0,2}"
的东西,并把它作为输入 - 它是由程序解析并翻译成组排列的它即代表
'a'
,'a0'
,'a00'
...'z99'
这些模式将在复杂性,基本上任何可能出现在URL文件名必须适应。该语言是Java或PHP,但任何语言或抽象/概念上的帮助都非常受欢迎。
我的问题是:
- 哪里开始以 “分析器” 的实施对上述
和同样重要的是,
- 如何将编译后的复杂图案转换为字符串
你能详细说明为什么正则表达式不适合这个问题吗? – GrayWizardx 2009-12-19 02:33:24
这是非常有趣和困难的问题。这是一个Ruby测验的主题:http://rubyquiz.com/quiz143.html。我喜欢的Ruby的一个特点是例如('a'..'zzzzz')。each {| x | puts x}打印所有大小为1到5的小写字母组合。 – mykhal 2009-12-19 03:08:18
@GrayWizardx您如何使用正则表达式算法的排列部分? – axada 2013-06-11 03:51:42