|
|
1
3
为了匹配所有允许的字段,以下看起来相当可怕的regex可以工作: @((?:cat|mouse|dog|puppy)\b|\((?:(?:cat|mouse|dog|puppy)(?:, *|(?=\))))+\))
它按顺序返回这些匹配项:
@ # the literal character "@"
( # match group 1
(?:cat|mouse|dog|puppy) # one of your valid search terms (not captured)
\b # a word boundary
| # or...
\( # a literal opening paren
(?: # non-capturing group
(?:cat|mouse|dog|puppy) # one of your valid search terms (not captured)
(?: # non-capturing group
, * # a comma "," plus any number of spaces
| # or...
(?=\)) # a position followed by a closing paren
) # end non-capture group
)+ # end non-capture group, repeat
\) # a literal closing paren
) # end match group one.
现在要确定 无效 @(?!(?:cat|mouse|dog|puppy)\b|\((?:(?:cat|mouse|dog|puppy)(?:, *|(?=\))))+\)) --^^
这将确定任何
你得做好准备
|
|
2
2
有了这些可爱的结果:
最后一段代码将为您完成所有扫描,并为您提供找到的无效标记列表:
|
|
|
3
1
这应该起作用:
它要么匹配一个
它还确保不接受部分匹配(
|
|
|
4
0
单个字段名(如
|
|
|
5
0
|
|
|
6
0
我最终以不同的方式做了这件事,因为以上都不起作用。首先我找到了像@cat这样的字段:
接下来,我检查找到的属性是否有效,并添加它们(唯一地添加到数组中):
|
|
|
Patrick Bond · 如何将模型中的函数结果添加到列表中? 1 年前 |
|
|
bur · 每次从模板调用方法都会查询数据库吗? 1 年前 |
|
|
Stefan · 在子目录中设置Django 1 年前 |
|
|
vale383 · 如何在Django端点中查找user_id 1 年前 |
|
|
Kovy Jacob · Django在动态URL段中添加斜线 1 年前 |
|
|
user987 · 如何在Django中访问提交的表单请求数据 1 年前 |
|
|
user24242514 · 将嵌套查询字符串请求转换为字典 1 年前 |