在我使用过的每种编程语言中,正则表达式支持(如果存在)基本上是一个黑匣子:有一些函数,如match
,scan
等,它们接受一个表达式并返回一些东西——通常是一个字符串或一个数组——但是他们在做的时候不会报告他们在做什么。
我想知道,在任何相当流行的编程语言中,是否有内置或库支持来匹配正则表达式并提供某种实时输出(例如,标准输出)来指示正在发生的事情。
更新:我很欣赏到目前为止的评论;但是,我不是在询问显示正则表达式本身结构的工具,这正是debuggex.com和regexper.com所做的(虽然这很酷!)。我的意思是询问在将表达式应用于某些输入的部分提供信息。
这是一个假设的例子:假设我有表达式“(foo|bar|baz)”,我用字符串“baz”测试它;然后我正在描绘可能看起来像的输出......
testing "foo" - nope
testing "bar" - nope
testing "baz" - found match
显然它看起来不像那样。但你明白了。