Python中文
首页
教程
问答
标签
搜索
登录
注册
带DOTALL的Regex,如何让它在某个时刻停止?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有这样一个python正则表达式:</p> <pre><code>re.compile(r'(\[chartsjs\].*\[/chartsjs\])', re.DOTALL) </code></pre> <p>我正在尝试对如下模式进行<code>re.findall</code>:</p> ^{pr2}$ <p>但它似乎将第一个<code>[charts]</code>与最后一个<code>[charts]</code>匹配,并从中间抓取所有内容,因为当我将其打印到控制台时,我看到的是:</p> <pre><code>[u'[chartsjs]\r\nname: mychart\r\ntype: line\r\nlabels: fish, cat, dog\r\ndata: 4, 5, 6\r\ndata2:5, 7, 9\r\n[/chartsjs]\r\n\r\nthis is some text now fool\r\n\r\n[chartsjs]\r\nname: second\r\ntype: line\r\nlabels: 100, 500, 1000\r\ndata: 50, 100, 10000\r\ndata2: 100, 100, 100\r\n[/chartsjs]'] </code></pre> <p>我希望正则表达式返回第一个匹配项,消除任意测试,然后找到另一个任意数量的匹配项。有办法吗?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>这里最重要的是你想把.*变成.*?。正如其他人所回答的,还有其他优化正则表达式的方法,但我认为你问题的根源是你想匹配所有的东西,直到你看到那[/charts]模式,哪个?会给你的。在</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何用强化学习更新函数逼近中的权重?
10 回答
如何用归并排序计算倒数?
6 回答
如何用当前数据拟合正弦波?
1 回答
如何用当前页面的值填充表单?
9 回答
如何用彩色地图在2dpython直方图中勾勒出箱子的轮廓?
1 回答
如何用彩色地图给等高线标签上色?
7 回答
如何用彩色打印到控制台?
4 回答
如何用彩色条绘制2d直方图,在Python中显示第三个变量的平均值?
10 回答
如何用彩色条绘制直方图,其中的颜色应与xaxis中的值一致?
8 回答
如何用彩色贴图填充曲线和原始边之间的区域?
10 回答
如何用循环分割数组并对其应用操作?
10 回答
如何用循环创建多个子集的数据帧
3 回答
如何用循环和递归实现求和
2 回答
如何用循环填充数组?
3 回答
如何用循环当前引用的位置更新变量?
1 回答
如何用循环求这个级数的和
5 回答
如何用循环解这个方程?
10 回答
如何用循环语句逐个读取数据帧中的数据?
5 回答
如何用循环除法?(Python)
3 回答
如何用感知一致性对HSV空间进行采样
2 回答