正则表达式在一行上找到 A 而不是 B [英] Regex to find A and not B on a line

查看:20
本文介绍了正则表达式在一行上找到 A 而不是 B的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在寻找一个正则表达式来搜索我的 python 程序,以查找所有将 foo 而不是 bar 作为关键字参数传递给方法的行.我正在尝试前瞻和后视断言,但运气不佳.

I'm looking for a regex to search my python program to find all lines where foo, but not bar, is passed into a method as a keyword argument. I'm playing around with lookahead and lookbehind assertions, but not having much luck.

有什么帮助吗?

谢谢

推荐答案

如果您有一个字符串 foo 想要查找,另一个字符串 bar 不能是目前,你可以使用这个:

If you have a string foo that you want to find and another string bar that must not be present, you can use this:

^(?!.*bar).*foo

创建一个完全满足您所有要求的正则表达式非常困难,因为 Python 代码不是常规语言,但希望您应该能够使用它作为起点来获得足以满足您需求的东西.

Creating a regular expression that exactly meets all your requirements is very difficult as Python code is not a regular language, but hopefully you should be able to use this as a starting point to get something good enough for your needs.

这篇关于正则表达式在一行上找到 A 而不是 B的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆