private Wildcard parseCommand(String sCommand, Boolean passive) {
        Matcher m = Pattern.compile("\\[([a-zA-Z0-9]+\\:)*[^\\]]+\\]").matcher(sCommand);
        String sWildcardFound = "";
        Wildcard sLastWildcard = null;

        while(m.find() && sLastWildcard == null) {
            sLastWildcard = getWildcardFromCommand(m.group().trim());
            if(sLastWildcard != null)
                sWildcardFound = m.group();
        }

        if(sLastWildcard == null)
            return null;

        CommandSender console = Bukkit.getServer().getConsoleSender();

        List<Wildcardplayer> players = sLastWildcard.getPlayers();
        if(players.isEmpty())
            return sLastWildcard;

        if(!passive)
            for(Wildcardplayer player : players)
                Bukkit.getServer().dispatchCommand(console, sCommand.replace(sWildcardFound, player.getName()));

        return sLastWildcard;
    }