本帖最后由 714023166 于 2019-10-27 03:31 编辑 
如题,请教LuckPerm怎么在权限节点和上下文中用正则表达式.
CatServer version git-CatServerAsync-1.12.2-c972d39 (MC: 1.12.2) (Implementing API version 1.12.2-R0.1-SNAPSHOT, Forge version 14.23.5.2838)
注意,请先自测是否可行.
LuckPerm为最新版本4.4.1
应用范围在 [权限节点] [和世界/服务器名]
并且已测试: /lp group ** permission set R=.* world=r=world|sc 不可用. (原文作者未举例,不太了解)别把*当做字符,我只是不知道填什么而用来占位的而已.
总之,,请教!
相关连接: https://github.com/lucko/LuckPerms/wiki/Advanced-Setup
如题,请教LuckPerm怎么在权限节点和上下文中用正则表达式.
CatServer version git-CatServerAsync-1.12.2-c972d39 (MC: 1.12.2) (Implementing API version 1.12.2-R0.1-SNAPSHOT, Forge version 14.23.5.2838)
注意,请先自测是否可行.
LuckPerm为最新版本4.4.1
应用范围在 [权限节点] [和世界/服务器名]
并且已测试: /lp group ** permission set R=.* world=r=world|sc 不可用. (原文作者未举例,不太了解)别把*当做字符,我只是不知道填什么而用来占位的而已.
总之,,请教!
相关连接: https://github.com/lucko/LuckPerms/wiki/Advanced-Setup
 本帖最后由 我的锅 于 2019-10-27 04:17 编辑 
LuckPerms 仅支持通配符'*', 从未对正则表达式提供支持. (伸脸. )
LuckPerms 仅支持通配符'*', 从未对正则表达式提供支持. (伸脸. )
我的锅 发表于 2019-10-27 02:33
LuckPerms 仅支持通配符'*', 从未对正则表达式提供支持.
有的,wiki上有,请仔细阅读wiki再回复,
 本帖最后由 我的锅 于 2019-10-27 02:53 编辑 
正则表达式 并不支持纠错.
"=r=" 并不是一个能够使人类或程序读懂的写法,若其本意为 "==" , 块编辑 中的 约束 并不能在 块编辑 之外使用.
714023166 发表于 2019-10-27 02:40
有的,wiki上有,请仔细阅读wiki再回复,
正则表达式 并不支持纠错.
"=r=" 并不是一个能够使人类或程序读懂的写法,若其本意为 "==" , 块编辑 中的 约束 并不能在 块编辑 之外使用.
我的锅 发表于 2019-10-27 02:52
正则表达式 并不支持纠错.
"=r=" 并不是一个能够使人类或程序读懂的写法,若其本意为 "==" , 块编辑 中的 ...
??? 你真的看了wiki?
 本帖最后由 714023166 于 2019-10-27 02:58 编辑 
这里是中文wiki原话,麻烦看清楚?
另外我说的是在权限节点应用,何时说了纠错? 又何时说了在纠错的约束用?
麻烦不要主观臆断,谢谢?
我的锅 发表于 2019-10-27 02:52
正则表达式 并不支持纠错.
"=r=" 并不是一个能够使人类或程序读懂的写法,若其本意为 "==" , 块编辑 中的 ...
正则表达式
LuckPerms支持使用正则表达式来定义权限节点与服务器/世界的名字, 当使用正则表达式的时候,必须添加前缀“R=”。 所以LuckPerm才会知道将它是作为正则表达式来输出,而不是作为普通的字符串来输出。
例如:你希望玩家可以创建两个组与权限系(tracks),通常只需要添加两个权限节点。 然而使用正则表达式,你只需要添加一个权限节点 luckperms\.create.* 。 记住,转为任何字符,例如一个点,都将作为一个节点被系统解析。
这里是中文wiki原话,麻烦看清楚?
另外我说的是在权限节点应用,何时说了纠错? 又何时说了在纠错的约束用?
麻烦不要主观臆断,谢谢?
714023166 发表于 2019-10-27 02:56
??? 你真的看了wiki?
还请解释一下 "=r=" 的含义.
714023166 发表于 2019-10-27 03:04
wiki上说,用正则的话添加"R="的前缀
"服务器/世界的名字"
这只是我尝试的组合之一,有问题? ...
意思是 "=R=" ?
714023166 发表于 2019-10-27 03:08
我需要的是可以得出我问题结果的答案,而不是你的问题,谢谢.
我问的是如何应用. ...
所以 错误的用法不应该得到纠正?...
原文中正是给出了例子, 而耳聪目明的您却忽视了它.
应用的方式是在某些命令, 例如/lp user/group <user|group> permission set <permission> true/false, 可在
<permission> 中填入 R=(正则表达式) .
前往 https://www.runoob.com/java/java-regular-expressions.html 学习正则表达式语法.
 本帖最后由 714023166 于 2019-10-27 03:32 编辑 
这个我也试过了
我需要的是他在 世界名 和 权限节点 中的示例。 不是用法。
而且, 我会正则的.
.* 就应该是所有权限不是? 请问我正则的使用哪里有错误.
您可真是机灵呢
https://github.com/lucko/LuckPerms/wiki/Advanced-Setup
还有 "从未对正则表达式支持" 你脸痛吗?
我的锅 发表于 2019-10-27 03:19
所以 错误的用法不应该得到纠正?...
这个我也试过了
我需要的是他在 世界名 和 权限节点 中的示例。 不是用法。
而且, 我会正则的.
并且已测试: /lp group ** permission set R=.* world=r=world|sc 不可用.
.* 就应该是所有权限不是? 请问我正则的使用哪里有错误.
您可真是机灵呢
Regex
LuckPerms has support for regex when defining permission nodes and server/world names.
Whenever regex is used, it MUST be prefixed with "R=", so LuckPerms knows to treat it as regex, and not as a normal string.
For example, if you wanted a user to be able to create both groups and tracks, you would normally just add the two permission nodes. However with regex, you can just add one. luckperms\.create.* Remember to escape any characters (including dots) as the entire node will be parsed.
https://github.com/lucko/LuckPerms/wiki/Advanced-Setup
还有 "从未对正则表达式支持" 你脸痛吗?
去提issue吧 让作者自己写例子去 我从三点开始看源码看到现在也没看出来(半恼)
xmdhs 发表于 2019-10-27 11:50
似乎是删除了对服务器和世界名中使用正则的功能。
作者觉得影响性能
感谢啦, 看来我的用法是没错的, 原来是作者删掉了这个功能