首页 > 解决方案 > 较长字符串中用户名的正则表达式模式

问题描述

MAC OSX,PowerShell 6.1 核心

我正在努力创建正确的 REGEX 模式以在 url 中间找到用户名字符串。简而言之,我正在使用 Powershell Core 6.1 并拉下网页并刮掉“li”元素。我把它写到一个文件中,所以我有一堆这样的行:

<LI><A HREF="/grouplist/expand-user/jimmysmith">Smith, Jimmy</A>&nbsp;

我需要的字符串是“jimmysmith”部分,每一行都有不同的用户名,不超过八个字母字符。我目前的模式是这样的:

(<(.|\n)+?>)|(&nbsp;) 

我可以在我的代码中使用“-replace $pattern”来获取“Smith, Jimmy”部分。我不知道自己在做什么,而获得我所得到的任何成功都是靠运气。

在使用了几个在线正则表达式助手后,我仍然坚持如何在第三个“/”之后获取“字符串”,但不包括最后一个引号。

谢谢你能给我的任何帮助。

标签: regexmacospowershell-v6.0

解决方案


你可以超级简单,

expand-user/([^"]+)

找到expand-user,然后捕获直到报价。


推荐阅读