python中的正则表达式与单词不匹配

矮人奥斯特里奇

我正在审查Java代码,要检查的类太多了,我进行了正则表达式来查找用Java编写的方法,该方法不会在finally块内关闭IO流。

(?s)(?<=public|private|protected).(?<!finally).*?.close\(\)\;

由于某种原因,这不起作用,甚至与那些最终阻塞的方法都匹配,因此也可以找到以下内容

public testMethod(){
   InputStream stream = .....
   try{ 
     //do something
   } finally {
      if(stream != null){
         stream.close();
      }
   }
}

虽然仅以下内容应匹配

public testMethod(){
   InputStream stream = .....
   //do something
   if(stream != null){
     stream.close();
  }
}

有指针吗?

理查德

你或许正则表达式应该是:(?s)(?<=public|private|protected)((?!finally).)*close\(\)\;regex101上的演示

说明((?!finally).)*验证字符串的其余部分不包含finally

注意:为了涵盖所有情况,您可能还需要检查,如果它们close()确实在finally的块内。您可以使用类似的表达式来实现(?s)(?<=public|private|protected)((?!finally[^}]*close\(\)\;).)*close\(\)\;

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用正则表达式匹配Python中的单词

来自分类Dev

Python正则表达式-html标记中的单词不匹配

来自分类Dev

正则表达式的正则表达式在Python中不匹配

来自分类Dev

匹配单词的正则表达式,或者不匹配

来自分类Dev

不遵循正则表达式匹配空间的单词

来自分类Dev

正则表达式与单词模式不匹配

来自分类Dev

正则表达式匹配不包含单词

来自分类Dev

不遵循正则表达式匹配空间的单词

来自分类Dev

正则表达式在文本中匹配单词,但在引号或注释中不匹配

来自分类Dev

Python正则表达式搜索,匹配不匹配

来自分类Dev

匹配单词的正则表达式

来自分类Dev

正则表达式单词匹配

来自分类Dev

Python正则表达式匹配<前的单词

来自分类Dev

Python:正则表达式单词匹配

来自分类Dev

Python正则表达式匹配单词的多次出现

来自分类Dev

Python正则表达式匹配全部或部分单词

来自分类Dev

用正则表达式匹配单词(Python 3)

来自分类Dev

从正则表达式匹配中捕获单词

来自分类Dev

在MySQL中匹配正则表达式以重复单词

来自分类Dev

JavaScript正则表达式匹配句子中的单词

来自分类Dev

正则表达式匹配消息中的单词

来自分类Dev

正则表达式以匹配网址中的多个单词

来自分类Dev

正则表达式,用于匹配句子中的单词

来自分类Dev

如何匹配正则表达式中的单词

来自分类Dev

正则表达式与PHP中的正则表达式不匹配

来自分类Dev

正则表达式与PHP中的正则表达式不匹配

来自分类Dev

正则表达式查找不匹配的多个单词(负单词匹配)

来自分类Dev

正则表达式匹配两个单词,不匹配其他单词

来自分类Dev

正则表达式或不匹配

Related 相关文章

热门标签

归档