Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Вытащить домен из текста.

Тема в разделе "Разработка плагинов для новичков", создана пользователем xDark, 24 апр 2017.

Статус темы:
Закрыта.
  1. Автор темы
    xDark

    xDark Активный участник Пользователь

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    Вообщем делаю плагин от рекламы.
    Сейчас есть такой код:
    Код:
        private static final String URL_REGEX = "^((https?|ftp)://|(www|ftp)\\.)?[a-z0-9-]+(\\.[a-z0-9-]+)+([/?].*)?$";
    
        private static boolean containsURL(String message) {
            try {
                Pattern p = Pattern.compile(URL_REGEX);
                Matcher m = p.matcher(message);
                String url = m.group();
                if (isWhiteListed(url))
                    return false;
                if (m.find()) {
                    List<String> current = WatchSystem.config().getStringList("settings.ad.list");
                    current.add(url);
                    WatchSystem.instance().getConfig().set("settings.ad.list", current);
                    WatchSystem.instance().saveConfig();
                    Settings.AD_WORDS.add(url);
                    return true;
                }
            } catch (Throwable t) {
                if (Settings.DEBUG)
                    WatchSystem.instance().getLogger().log(Level.SEVERE,
                            "Exception thrown while checking if message contains URL", t);
                return false;
            }
            return false;
        }
    
    Но постоянно бросает ошибку.
    Код:
    [19:13:52 INFO]: <wars> 34534534534 sdfsdf
    [19:13:55 ERROR]: [WatchSystem] Exception thrown while checking if ad contains URL
    java.lang.IllegalStateException: No match found
            at java.util.regex.Matcher.group(Unknown Source) ~[?:1.8.0_121]
            at java.util.regex.Matcher.group(Unknown Source) ~[?:1.8.0_121]
            at me.xDark.watchSystem.Util.containsURL(Util.java:56) [WatchSystem.jar:?]
            at me.xDark.watchSystem.Util.checkAd(Util.java:106) [WatchSystem.jar:?]
            at me.xDark.watchSystem.AsyncChatListener.onChat(AsyncChatListener.java:23) [WatchSystem.jar:?]
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_121]
            at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_121]
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) ~[?:1.8.0_121]
            at java.lang.reflect.Method.invoke(Unknown Source) ~[?:1.8.0_121]
            at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) [spigot.jar:git-Spigot-4af49dc-c5e9a16]
            at org.bukkit.plugin.RegisteredListener.callEvent(RegisteredListener.java:62) [spigot.jar:git-Spigot-4af49dc-c5e9a16]
            at org.bukkit.plugin.SimplePluginManager.fireEvent(SimplePluginManager.java:502) [spigot.jar:git-Spigot-4af49dc-c5e9a16]
            at org.bukkit.plugin.SimplePluginManager.callEvent(SimplePluginManager.java:484) [spigot.jar:git-Spigot-4af49dc-c5e9a16]
            at net.minecraft.server.v1_9_R2.PlayerConnection.chat(PlayerConnection.java:1271) [spigot.jar:git-Spigot-4af49dc-c5e9a16]
            at net.minecraft.server.v1_9_R2.PlayerConnection.a(PlayerConnection.java:1209) [spigot.jar:git-Spigot-4af49dc-c5e9a16]
            at net.minecraft.server.v1_9_R2.PacketPlayInChat$1.run(PacketPlayInChat.java:39) [spigot.jar:git-Spigot-4af49dc-c5e9a16]
            at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_121]
            at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_121]
            at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) [?:1.8.0_121]
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) [?:1.8.0_121]
            at java.lang.Thread.run(Unknown Source) [?:1.8.0_121]
    Есть ли какой - то другой способ проверить сообщение на наличие ссылок?
    Заранее спасибо.
     
    Последнее редактирование: 24 апр 2017
  2. Хостинг MineCraft
    <
  3. Автор темы
    xDark

    xDark Активный участник Пользователь

    Баллы:
    96
    Skype:
    ailyashevich
    Имя в Minecraft:
    xDark
    гыг[DOUBLEPOST=1493061588,1493059274][/DOUBLEPOST]Решено, закрыто с:
     
Статус темы:
Закрыта.

Поделиться этой страницей