gpt4 book ai didi

python - 正则表达式匹配所有注释//,/* */

转载 作者:太空宇宙 更新时间:2023-11-03 15:48:45 25 4
gpt4 key购买 nike

我正在尝试编写正则表达式来查找给定文件中的所有注释。我应该处理的评论是多行通信,例如

/* comments.
is multiline comment*/

// one liner comment.

我搜索了几个地方,找到了一些答案。 (one answer),我设法写了一些东西来满足我的大部分需求:

(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/|//.*\n?)

我的代码唯一的问题是它捕获了字符串内的注释。例如

String str = " hey, // I'm not a comment "

我的代码得到“我不是评论”但它不应该。我尝试了几种方法,例如 negativelookahead 和lookbehind,但似乎没有任何效果。

有什么办法可以做我想做的事吗?/谢谢。

编辑:我使用的语言是 python

最佳答案

通常,考虑使用解析器(考虑嵌套注释等)。话虽如此,如果支持的话,您可以使用 (*SKIP)(*FAIL) 构造(您没有指定您的编程语言):

"[^"]+"(*SKIP)(*FAIL)
|
'[^']+'(*SKIP)(*FAIL)
|
(?|
//(?P<comment>.+)
|
/\*(?P<comment>[\s\S]+?)\*/
)

参见a demo on regex101.com .

关于python - 正则表达式匹配所有注释//,/* */,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41519150/

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