繁体   English   中英

Django queryset筛选出具有相同值的对象

[英]django queryset filter out the objects with same values

我有

s = "[[[a_12]]] [[[|]]]"

我需要使用不解析[[[|]]] regexp从s抓取a_12

我试过了:

re.search(r'\[\[\[ [^\]]+ \]\]\]', s).group()

但是如果我放在第一位,它也会抓住[[[|]]] 我对regexp非常不好,有人可以帮我吗?

您可以忽略| 通过添加| 进入否定阶级

测试

>>> s = "[[[a_12]]] [[[|]]]"
>>> re.search(r'\[\[\[[^\]\|]+\]\]\]', s).group()
'[[[a_12]]]'

>>> s = "[[[|]]] [[[a_12]]]"
>>> re.search(r'\[\[\[[^\]\|]+\]\]\]', s).group()
'[[[a_12]]]'
  • [^\\]\\|]匹配|以外的任何内容 ]

只捕获[[[]]]的单词字符。

>>> s = "[[[a_12]]] [[[|]]]"
>>> re.findall(r'\[\[\[(\w+)]]]', s)
['a_12']

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM