Regex 用于过滤冒号分隔列表的正则表达式

Regex 用于过滤冒号分隔列表的正则表达式,regex,colon,Regex,Colon,我使用Word List Updater 2.7 for Windows,我需要一个正则表达式来过滤以下类型的列表 以下是哈希列表: Administrator:500:90lpA5CghgfF29A2D3A5A251441B67ju:2C3D3AF3B94337C248DE0C5A75AEAE1F:Built-in account for administering the computer/domain:: Guest:501:0000000000000000000000000000000

我使用Word List Updater 2.7 for Windows,我需要一个正则表达式来过滤以下类型的列表

以下是哈希列表:

Administrator:500:90lpA5CghgfF29A2D3A5A251441B67ju:2C3D3AF3B94337C248DE0C5A75AEAE1F:Built-in account for administering the computer/domain::

Guest:501:00000000000000000000000000000000:00000000000000000000000000000000:Built-in account for guest access to the computer/domain::

user:1002:00000000000000000000000000000000:F814ABE8BC04A52B0F4B503E2C80E037:::

paulenia1:1003:00000000000000000000000000000000:69C3A5C191AF29A2D3A5A251441B4E63:::
所以首先我只需要从每条线的这一部分开始:

2C3D3AF3B94337C248DE0C5A75AEAE1F
F814ABE8BC04A52B0F4B503E2C80E037
69C3A5C191AF29A2D3A5A251441B4E63
然后

administrator:2C3D3AF3B94337C248DE0C5A75AEAE1F
user:F814ABE8BC04A52B0F4B503E2C80E037
paulenia1:69C3A5C191AF29A2D3A5A251441B4E63

对于初学者,您可以使用以下选项:

/^([A-z0-9]+):\d+:(?:0+:)*([A-z0-9]+):/gm
  • 每行,
  • 它在开头捕获字符串和数字
  • 后面跟一个冒号
  • 后面跟着一些数字
  • 后跟一个(或多个)可选的带尾随冒号的零组
  • 后跟捕获的一组字符和数字
  • 后跟一个冒号
在行动中看到它:

当然,它还捕获“Guest”用户的零散列,但您可能仍然需要它进行比较,或者在处理捕获的字符串时将其删除

您要求一个正则表达式,但正如注释中所建议的,您也可以简单地在冒号处拆分字符串。下面是它的JavaScript实现:

var-arr=[
'管理员:500:90LPA5CGFGF29A2D3A5A251441B67JU:2C3D3AF3B94337C248DE0C5A75AE1F:…',
'来宾:501:00000000000000000000:00000000000000000000:…',
'用户:1002:00000000000000000000:F814ABE8BC04A52B0F4B503E2C80E037:…',
“paulenia1:1003:00000000000000000000:69C3A5C191AF29A2D3A5A251441B4E63:…”
];
arr.forEach(函数(str){
var split=str.split(“:”);
如果(split.length>=4&&!/0{32}/.test(split[3]))
document.writeln(拆分[0]+':'+拆分[3]+'
); });
body{font-family:sans-serif;font-weight:bold;font-size:large;color:#0087DE;text-shadow:1px 1px 0#777;}
在您尝试的方法中,什么不起作用?@munteancosminmananim:它起作用了,但我添加了一个可运行的代码段。它输出名称和散列,就像你想要的一样。我在windows上使用那个更新工具…我需要这个工具的代码,一个正则表达式代码…不是别的…所以我接受这个代码:/^([a-z0-9]+):\d+:(?:0+:)*([a-z0-9]+):/gm@MunteanCosminManim:在上面的代码片段中还是在中对您有效?