gpt4 book ai didi

Javascript:像这样准确地拆分字符串:/kick @Username "reason"但是用户名可以有特殊字符

转载 作者:行者123 更新时间:2023-11-30 18:13:05 25 4
gpt4 key购买 nike

这是我的困境...

我希望能够拆分如下所示的字符串:

/ban @User "because I told you so"

但是,使用空格、@ 或引号作为字符串分隔符的问题是用户名可能包含大量特殊字符。而且,这些特殊字符可能会与处理命令发生冲突。

例如:

/ban @Person" "because why not"

不会,也不会

/ban @Person"name" "reason"

当我可以用来分割字符串的任何字符都可以很容易地被目标用户名模拟以中断命令时,我如何才能准确地处理这样的事情?这有可能吗?老实说,RegExp 对我来说有点难以理解或查看,所以如果这是一个简单的正则表达式修复,我深表歉意:(

非常感谢解决方案,我现在有一个可以工作的处理器:

    var yourRegex = /^@(.*?) "([^"]+)"$/;

因为我已经可以删除/ban(其他命令,如/kick 等,因为它不完全是这个命令),所以我只是将其从正则表达式中删除。我还移出了 @ 符号,因为我不需要它来定位用户。工作 100%:D

最佳答案

试试这个:

/^\/ban (@.*?) "([^"]+)"$/

这将在第一个子模式中为您提供用户名(带有前导 @ 符号,如果您想排除它,只需将其移到括号外),以及第二个子模式中的原因(不带引号围绕它,将它们移动到括号内以包括它们)。

关于Javascript:像这样准确地拆分字符串:/kick @Username "reason"但是用户名可以有特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14095462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com