gpt4 book ai didi

java - 如何将正则表达式转换为 extglob 表达式?

转载 作者:搜寻专家 更新时间:2023-11-01 03:51:37 24 4
gpt4 key购买 nike

我想将正则表达式转换成 glob

我在看 jakarta oro但我找不到适合我需要的方法。它编译正则表达式并返回其等效的 glob

都是Type-3文法,理论上应该可以。

不幸的是,我在使用 JDK5 时受到了限制。

最佳答案

extglob 可以匹配许多正则表达式结构(pattern-list 是一个变更列表):

extglob           regex
-------------- -----------------


? [^/]
* [^/]*
. \.
** .
?(pattern-list) (pattern-list)?
*(pattern-list) (pattern-list)*
+(pattern-list) (pattern-list)+
@(pattern-list) (pattern-list)
!(pattern-list) (?!pattern-list)

据我所知,在 extglob 中也有一些正则表达式不能做的事情:

??????????????    [^abc]
?????????????? \1
?????????????? most look arounds

假设正则表达式中的所有构造都具有 extglob 等效项,则可以将其转换为 extglob 形式。这会很困难,因为正则表达式由 CFG 表示。而您使用的是 Java,这会迫使您使用邪恶的转义符 \\

为什么不使用支持正则表达式的不同 bash 实用程序呢?喜欢this .

关于java - 如何将正则表达式转换为 extglob 表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26042753/

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