[英]How do I match a string up to a number in python using regular expressions?
我是正则表达式的新手,但是我希望匹配一个字符串,直到数字开始。
所以说我有:
EEEE1234
那我想只提取:
EEEE
我试过搜索,但我发现正则表达式令人困惑,我认为最好的方法是通过例子。 有什么想法吗? 此外,任何有关任何正则表达式代码生成器或良好的教程的见解?
也许有一点可能有用,就是将正则表达式视为一种工具,首先执行匹配操作。 搜索,替换和字符串拆分都是这种能力的结果。 一个例子,取决于你想要如何提取所需的部分:
r"^(\D+)\d*"
此正则表达式使用您稍后可以引用的捕获组 。
出于学习目的,正如已经提到的那样,有许多资源。 如果您对正则表达式如何工作感兴趣,或者想要更好地理解它们,您可能需要阅读一些关于常规语言的内容 。
如果我们专门寻找字母符号的时候,我会做类似的事情:
re.search(r'[a-zA-Z]+(?=\d+)')
只有当数字跟随数字时才匹配,但不会返回数字本身。 这样你也可以避免群体,这可能是混乱的。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.