Python中文
首页
教程
问答
标签
搜索
登录
注册
名为conditional lookahead的Regex(在Python中)
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我希望根据字符串后面是否存在某个字符块来匹配字符串的开头。一个非常简单的版本是:</p> <pre><code>re.search("""^(?(pie)a|b)c.*(?P<pie>asda)$""", 'acaaasda') </code></pre> <p>其中,如果<code><pie></code>匹配,我希望在字符串的开头看到<code>a</code>,如果不是,那么我宁愿看到{<cd3>}。在</p> <p>我会使用普通的数字前瞻,但不能保证有多少组将或不会匹配这两个。在</p> <p>我现在得到{<cd4>}。我内心的失落感告诉我,这是因为我想要的是不可能的(前瞻命名组并不是一个<em>常规</em>语言解析器的一个特性),但我真的真的很想让它奏效——另一种选择是放弃4到5个小时的regex编写,明天再把它作为递归下降解析器之类的东西来做。在</p> <p>提前谢谢你的帮助。在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>不幸的是,我不认为有一种方法可以对命名组执行您想要的操作。如果您不介意重复<em>太多</em>,可以将共享条件和<code>OR</code>表达式复制在一起:</p> <pre><code>^(ac.*asda|bc.*)$ </code></pre> <p>如果它是一个复杂的表达式,您可以始终使用字符串格式来共享它(而不是复制粘贴共享部分):</p> ^{pr2}$
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
当用户用PYTHON设置一个或一个不带值的URL时,他们怎么能输入一个/a的代码呢?
3 回答
当用户登录到站点时,如何显示不同的导航栏
4 回答
当用户登录时,在Flask中向用户显示处理结果
4 回答
当用户的Flask会话结束时,我如何从Redis后端中移除所有Celery结果?
5 回答
当用户的Okta配置文件字段当前为blan时,更新该字段
9 回答
当用户的付款逾期2天时,从Django模型检索数据
8 回答
当用户的消息以问号结尾时,如何让机器人说些什么?
5 回答
当用户的系统上可能也安装了Python 2.7时,如何在用户的系统上运行Python 3脚本?
2 回答
当用户确定打印数量时,使用Matplotlib打印动画
6 回答
当用户离开时是否可以删除整个网页?
10 回答
当用户给出一个单词时如何打印?
5 回答
当用户继续更改TKin中的值(使用trace方法)时,使用Entry并更新输入的条目
1 回答
当用户编辑表单字段时,从Django时间字段中删除秒数
4 回答
当用户被更改时,消息不会来自web套接字
4 回答
当用户访问表单时,如何使表单为只读,而不具有更改权限
2 回答
当用户试图更改对象的值时,使用描述符类引发RuntimeError
5 回答
当用户调整GUI的大小时,是否有方法更改GUI内容的大小?
8 回答
当用户调整风的大小时,pythontkinter小部件的大小会不均匀
5 回答
当用户购买某个类别时,是否查找其他类别的销售?
8 回答
当用户转到上一页时,Django和芹菜插入操作
2 回答