gpt4 book ai didi

JavaScript 正则表达式到 Java 正则表达式

转载 作者:行者123 更新时间:2023-12-01 15:38:38 26 4
gpt4 key购买 nike

我有一小段用 Javascript 编写的遗留代码,用于扫描网页源并查找模式。

我正在将功能迁移到 Java 程序。所以,我的问题是如何使用某种查找和替换功能将 JavaScript 正则表达式解析为 java 正则表达式?

例如,我的 JavaScript 正则表达式当前读取(作为字符串)

RegEx = "/(\\/addthis_widget\\.(js|php)|\\.addthis\\.com\\/js\\/widget\\.(js|php))/我”;

我在 stackoverflow 上找到了这篇旧帖子:

How to convert javascript regex to safe java regex?

这表明这可以解决问题:

strOutput.replace("/{{[^]*?}}/g","");

但是,这似乎不够健壮,并且不会生成编译器可以识别的正则表达式。

最佳答案

删除开头的/和结尾的/i。在开头添加 (?i)。

Java 不使用 /expr/options 格式。 /expr/G 将被\G 边界匹配替换,但在 java 中通常只需多次调用 matcher.find() ,它就会开始搜索匹配自动出现在前一个的末尾,使得\G 毫无意义。

将所有\\/改为/,正斜杠不需要转义。

关于JavaScript 正则表达式到 Java 正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8443353/

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