String (final PsiElement insertedElement, final int offset, final @NotNull ElementPattern trimStart) { String substr = insertedElement.getText().substring(0, offset - insertedElement.getTextRange().getStartOffset()); if (substr.length() == 0 || Character.isWhitespace(substr.charAt(substr.length() - 1))) return ""; substr = substr.trim(); int i = 0; while (substr.length() > i && trimStart.accepts(substr.charAt(i))) i++; return substr.substring(i).trim(); }