正则表达式从右到左事件的后向查找
我正在提取以 Windows LogonID 结尾的事件...这意味着:
分配给新登录的特殊权限:登录 ID:0x007d
我认为这是最好的方法:
^(?<event>.+)(?<=ID:\s\d+x[A-F\d]+)$
使用 RegexOptions.RightToLeft 从末尾开始搜索细绳。
使用lookbehind,因此如果 {ID: LogonId} 不存在,它将尽快失败。
由于我找不到任何好的从右到左测试器,我在这里寻求您的帮助。
I'm extracting the events ending with Windows LogonIDs... this means like:
Special Privileges assigned to a new Logon: Logon Id: 0x007d
I thought this is the best way to do it:
^(?<event>.+)(?<=ID:\s\d+x[A-F\d]+)$
Using RegexOptions.RightToLeft to start the search from the End of the String.
Using lookbehind so If the {ID: LogonId} didn't exists it will fail as fast as it can.
As I can't find any good Right To Left tester I'm here, asking for your help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
你能得到比赛的位置吗?在 Perl 中,人们可以这样做:
或者
Can you get the position of the match? In Perl, one could do:
or
我不明白为什么您需要 RightToLeft 选项或后视。您是否使用这样的正则表达式测试过它:
...并发现它太慢了?
I don't see why you would need the RightToLeft option or a lookbehind. Have you tested it with a regex like this:
...and found it to be too slow?