gpt4 book ai didi

regex - OpenEdge 中的正则表达式

转载 作者:行者123 更新时间:2023-12-02 21:45:42 25 4
gpt4 key购买 nike

我想检查 OpenEdge 中的变量是否采用 pascal 大小写。

我找到了 matches 运算符,并编写了以下代码:

define variable cVariable as character no-undo.

cVariable = "cPascalCase":U.

message cVariable matches 'c[A-Z]*':U.

但是不行,显示“no”。有没有办法在 OpenEdge 中指定第二个字符应为大写?还有更多,检查变量是否包含以大写字母开头的单词组?

提前致谢!

最佳答案

MATCHES 不支持正则表达式。 The documentation说它只需要简单的通配符,例如 .*。如果您知道您的代码将始终在 Windows 上运行,您可以 use the CLR bridge运行 .NET 代码:

USING System.Text.RegularExpressions.*.

DEF VAR cVariable AS CHAR NO-UNDO INITIAL "cPascalCase".
DEF VAR regexp AS CLASS Regex NO-UNDO.

regexp = NEW Regex("c[A-Z]*").
MESSAGE regexp:IsMatch(cVariable).

FINALLY:
DELETE OBJECT regexp.
END.

关于regex - OpenEdge 中的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19540703/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com