我对 Ada 很陌生,我正在尝试用一些文本做一些简单的工作。我想要做的就是读入一个文件,并删除除字母、空格或换行符之外的所有内容。所以删除所有标点符号和数字。在其他语言中,我只会创建一个简单的 [^a-zA-Z] 正则表达式,查看每个字符,如果它适合 RegEx,则将其删除,但我似乎无法在 Ada 中找到有关 RegEx 的任何文档。那么,Ada 中有 RegEx 吗?如果没有,那么对我来说进行这样的简单文本编辑的最佳方法是什么。

非常感谢-JB

有帮助吗?

解决方案

如果您正在使用GNAT编译器,有一组称为GNAT.RegExpGNAT.RegPatGNAT.Spitbol这个任务做的包。

提防它不是标准的regexp ALA perl的而是基于SNOBOL4。然而,它不应该是很难从一种类型的正则表达式的转换为另一种。

其他提示

您可能想通过这个例子,只是看你想忽略不把它们变成新的字符串中的字符。

哪个版本的Ada您使用的是?

http://www.adaic.com /docs/95style/html/sec_8/8-4-7.html

我可能会看看你鞋子里的 Gnat snobol 东西。

然而,有一个可用于一般词法分析的项目(有点像 Boot's Spirit),称为 开放令牌. 。对于稍微复杂的任务,您可能会发现它很有用。

我还没有使用过现代版本,但当我领导该项目时,该项目与编译器无关。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top