private List<MethodInfo> findMethods(String fileContent, ClassInfo classInfo) {
		Pattern pattern;
		if (classInfo.getType().equals("interface")) {
			pattern = Pattern.compile("(\\*\\*([^@/]+)[^/]*/\\s*)?(public)? ?([a-zA-Z0-9<>, ]+) ([^ ]+\\([^\\r]*?\\));", Pattern.MULTILINE + Pattern.DOTALL);
		} else {
			pattern = Pattern.compile("(\\*\\*([^@/]+)[^/]*/\\s*)?(public|private|protected) ?([a-zA-Z0-9<>, ]+) ([^ ]+\\([^\\r]*?\\)) \\{", Pattern.MULTILINE + Pattern.DOTALL);
		}
		Matcher matcher = pattern.matcher(fileContent);
		List<MethodInfo> returnList = new ArrayList<>();
		while (matcher.find()) {
			MethodInfo method = new MethodInfo();
			String comment = matcher.group(2);
			if (comment != null) {
				comment = comment.replace("\r\n", "").replace("*", "").replaceAll("\\s+", " ").trim();
			}
			method.setComment(comment);
			if (classInfo.getType().equals("interface")) {
				method.setModifier(Modifier.PUBLIC);
			} else {
				method.setModifier(getModifier(matcher.group(3)));
			}
			String returnType = matcher.group(4);
			if (returnType != null) {
				returnType = returnType.trim();
				if ((returnType.equals("if") || returnType.equals("for"))) {
					continue;
				}
			}
			method.setReturnType(returnType);
			method.setName(matcher.group(5));
			returnList.add(method);
		}

		return returnList;
	}