小编Phi*_*ill的帖子

有没有办法在不和谐消息中找到单词的确切字符串?

目前我正在开发一个不和谐的机器人,它正在过滤消息。当尝试过滤包含在其他单词中的单词时,会出现问题,从而触发重复消息。

\n

这是我的filter.txt:

\n
sad\nsadness\nsadnesses\n
Run Code Online (Sandbox Code Playgroud)\n

由于“悲伤”也可以在“悲伤”中找到,因此每当写“悲伤”时,我都会得到“悲伤”的误报。
\n是否可以仅检测消息中的确切字符串?就像:I want to be happy, because sadness is bad \xe2\x86\x92 '只检测悲伤'

\n

我希望你明白我的意思。

\n

代码:

\n
public void onGuildMessageReceived(GuildMessageReceivedEvent e) {\n    File file = new File("src/filter.txt");\n    try {\n        BufferedReader br = new BufferedReader(new FileReader(file));\n        String line;\n        while ((line = br.readLine()) != null) {\n            if(!line.startsWith("#")) {\n                if(e.getMessage().getContentRaw().contains(line)) {\n                    User user = e.getJDA().getUserById(e.getAuthor().getIdLong());\n                    e.getMessage().delete().queue();\n                    user.openPrivateChannel().queue(privateChannel -> {\n                        privateChannel.sendMessage("Bitte achte auf deine Sprache!").queue();\n                    });\n                }                   \n            }\n        }\n    } catch (IOException e1) {}\n}\n …
Run Code Online (Sandbox Code Playgroud)

java discord-jda

5
推荐指数
1
解决办法
8425
查看次数

C# 如何将四元数转换为欧拉角 (XYZ)

我见过很多关于欧拉角和四元数之间转换的问题,但我从未找到任何可行的解决方案。也许你可以帮助我为什么这没有返回正确的值。我需要四元数(XYZ)到欧拉角之间的转换,这是我当前使用的代码:

        public static Vector3 Q2E(Quaternion q) // Returns the XYZ in ZXY
        {
            Vector3 angles;

            angles.X = (float)Math.Atan2(2 * (q.W * q.X + q.Y * q.Z), 1 - 2 * (q.X * q.X + q.Y * q.Y));
            if (Math.Abs(2 * (q.W * q.Y - q.Z * q.X)) >= 1) angles.Y = (float)Math.CopySign(Math.PI / 2, 2 * (q.W * q.Y - q.Z * q.X));
            else angles.Y = (float)Math.Asin(2 * (q.W * q.Y - q.Z * q.X));
            angles.Z = (float)Math.Atan2(2 * (q.W …
Run Code Online (Sandbox Code Playgroud)

c# math quaternions euler-angles

4
推荐指数
1
解决办法
6420
查看次数

标签 统计

c# ×1

discord-jda ×1

euler-angles ×1

java ×1

math ×1

quaternions ×1