Java - Write code to get substring Before Last separator

Requirements

Write code to get substring Before Last separator

Demo

//package com.book2s;

public class Main {
    public static void main(String[] argv) {
        String str = "book2s.com";
        String separator = ".";
        System.out.println(substringBeforeLast(str, separator));
    }/*from w  w  w. j  a v  a  2s . c o  m*/

    public static String substringBeforeLast(String str, String separator) {
        if (isEmpty(str) || isEmpty(separator))
            return str;
        int pos = str.lastIndexOf(separator);
        if (pos == -1)
            return str;
        else
            return str.substring(0, pos);
    }

    public static boolean isEmpty(String str) {
        return str == null || str.length() == 0;
    }

    public static String substring(String str, int start) {
        if (str == null)
            return null;
        if (start < 0)
            start = str.length() + start;
        if (start < 0)
            start = 0;
        if (start > str.length())
            return "";
        else
            return str.substring(start);
    }

    public static String substring(String str, int start, int end) {
        if (str == null)
            return null;
        if (end < 0)
            end = str.length() + end;
        if (start < 0)
            start = str.length() + start;
        if (end > str.length())
            end = str.length();
        if (start > end)
            return "";
        if (start < 0)
            start = 0;
        if (end < 0)
            end = 0;
        return str.substring(start, end);
    }
}

Related Exercise