我目前正在尝试创建一个软件组件,该组件将能够解释动态字符串,例如:
%TO_LOWER%(%DELETE_WHITESPACES%("A SAMPLE TEXT"))
这将导致以下字符串:
asampletext
我希望能够使用语义参数等定义一组可用的函数。
我已经知道(或多或少)如何使用正则表达式。
我的问题是:
谢谢!
最佳答案
正则表达式无法表达递归语法,您的语法似乎需要递归语法。如果是这种情况,则正则表达式根本无法解决问题。
这不是图书馆要解决的问题。您要么需要使用解析器生成器系统(例如Antlr或Javacc)来生成词法分析器和解析器,要么从头开始对其进行编写。前一种方法可能更好……除非您已修读涵盖该领域的大学水平的科目,或准备进行大量阅读。
Antlr和Javacc都有大量的教程 Material 和示例。