用于捕获“*”的正则表达式,但不包括注释节

2024-04-19 22:05:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我想捕获代码中除注释部分以外的所有*。 注释部分的regex是:(\/\*\[\S\s\]*?\*\/) 我尝试排除注释部分,并搜索前面/后面有0个或更多空格的任何*字符。你知道吗

Regex : [^\/\*[\S\s]*?\*\/\]\s*\*\s*


/**
 * This function is useless
 *
 * @return      sth
 */
public void testMe() {
    int x = 5*4;
    x*=7;
    x = x**2;
}

它应该匹配*内的所有testMe。你知道吗


Tags: 代码returnisfunctionpublicthis字符regex
1条回答
网友
1楼 · 发布于 2024-04-19 22:05:16

这可以通过使用捕获组的*SKIP what's to avoid模式来解决,即What_I_want_to_avoid|(What_I_want_to_match)

\/\*[\S\s]*?\*\/|(\*+)

这里的想法是完全忽略regex引擎返回的所有匹配:那是垃圾桶。相反,我们只需要检查capture group$1,设置后,它包含注释外的星号。你知道吗

Demo

相关问题 更多 >