用于执行正则表达式替换的 LibreOfiice Basic 函数

问题描述

要求

我希望使用正则表达式替换在 LibreOffice Basic 宏中操作字符串值吗?我想使用类似 y = regex (x,"^¿(.*)\?$","$1") 的东西来操作字符串变量(而不是文档的单元格)。该宏将从 LibreOffice Calc 中使用。

这不是针对上述(微不足道的)问题,而是我经常错过的一种可能性。

表面状态
搜索暴露于脚本?

当然,LibreOffice 引擎会执行正则表达式替换(在交互式查找/替换和 REGEX 函数中)。然而,似乎只有正则表达式 search 暴露给 Basic —— 而这不是我想要的。 (它是由有点麻烦的 TextSearch 服务提供的,它(如果我没记错的话)还可以在基本变量中搜索字符串值。)

电子表格功能:不起作用

我以为可以在 LO Basic 中调用 Calc 函数,但调用

z   = regex (x,"$1")
z   = regex (x,"$1","g")

只是说“基本运行时错误。未定义子过程或函数过程”。

破解

作为一个可怕的黑客,人们可以在我的工作表的草稿部分操作一些包含适当公式的单元格,但这有很多明显的缺点,我只会在极端情况使用它!

各种来源

问题 Using regex in a libreoffice calc macro to extract text from parentheses in a cell 是关于使用 RE 在单元格中查找文本。

the API documentation搜索“regular”只会抛出上面提到的 TextSearch 服务。

一些论坛有像 this 这样的帖子,只能搜索地址;我没有发现任何关于更换的信息。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)