10 个字符的字母数字字符串的正则表达式

我的尼克

我需要为 urls.py 文件编写一个表达式

获取变量 var 可以是 10 个字符的字母数字字符串。

链接看起来像这样

http://127.0.0.1:8000/?var=fea40u7b94
凯尔·费尔恩斯

事实证明,当您添加边缘情况时,它会变得稍微复杂一些,所以我将提供一个答案:

[&?]var=((?:%[\dA-Fa-f]{2}|[^&%]){10})(?:&|$)

演示

基本上,这将在参数过程中的任何一点匹配“var”,而不匹配“othervar=”,它将确保将 url 编码的字符作为单个字符抓取,并确保它不会抓取部分“ var"(假设信息长度为 11 或 20 个字符,这将与该字符串不匹配,因为它会检查后面的另一个参数或字符串的结尾)。

分解:

  • [&?]var=-var=必须发生在 a&或 a 之后?
  • %[\dA-Fa-f]{2} - 在百分号后匹配十六进制代码(将 url 编码的字符作为单个字符)。
  • [^&%] - 任何不是百分比或&符号的东西
  • (?:%[\dA-Fa-f]{2}|[^&%]){10} - 非捕获组,获取十六进制码或不是百分比或与号精确 10 次
  • ((?:%[\dA-Fa-f]{2}|[^&%]){10}) - 捕捉我在最后一点中解释的内容
  • (?:&|$) - 以与号或字符串或行的结尾结束

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

正则表达式仅在golang中屏蔽任何匹配10位数字的字符串

正则表达式用于字母数字字符串中的数字计数

正则表达式检查Ruby中的字母数字字符串

正则表达式验证带有可选空格的字母数字字符串

正则表达式混合字符串中是否有10位以上的数字?

如何使用正则表达式查找特定单词并返回以下10个字符?

Javascript正则表达式,仅允许使用最多10位数字,字符串和特殊字符

是否需要仅用于字母数字的正则表达式(无纯数字或字母)并且正好限制为10个字符?

正则表达式,用于从字符串中准确提取10位数字

正则表达式选择10位数字的电话号码,但是如果字符串包含10位以上的数字,则无效?

正则表达式可检测长度为10到20且需要至少3个大写字母和其他条件的字符串-数字组合

Python正则表达式匹配包含字母和数字的8个字符的字符串

C#正则表达式获取4到10个字符之间的单词

正则表达式验证10位全数字的字符的字符串

preg_match正则表达式以匹配2个字符和2到10个数字

正则表达式-在PHP之后匹配'a'和10个字符

PHP正则表达式检查字母数字字符串

如何匹配正则表达式中0到10之间仅包含两个且不超过两个数字的整个字符串?

正则表达式查找一个字符的10个以上实例

如何使用正则表达式使用Notepad ++删除此10个字符的字母数字字符串之外的所有内容

正则表达式 - 提取 {search string} + 前 10 个下一个字符

包含至少 3 位数字的至少 10 个字母数字字符的正则表达式

用于字母数字字符串的 Django URL 正则表达式

使用正则表达式检测字母数字字符串的范围

正则表达式取出 10 个字符的字符串(数字和文本)的前 4 或 5 个字符

正则表达式 | 检测字符串中小于 10 的数字(日期表示)

正则表达式匹配 2 个字母和最多 10 个数字

正则表达式 2 位 10 个字母/数字

正则表达式仅在 shell 中捕获字母数字字符串