public class Text extends Object
| Modifier and Type | Class and Description |
|---|---|
static class |
Text.Convertors
Конверторы текста
|
static interface |
Text.ParseStringResult
Результат анализа текста
|
static class |
Text.Predicates
Текстовые предикаты
|
static class |
Text.SimpleParseResult |
| Modifier and Type | Field and Description |
|---|---|
protected static Map<String,String> |
text2HtmlCharMap |
| Constructor and Description |
|---|
Text() |
| Modifier and Type | Method and Description |
|---|---|
static Iterable<String> |
align(Iterable<String> lines,
Align align,
String padText,
int len) |
static String[] |
align(String[] lines,
Align align,
String padText,
int len)
Выравнивает текст до определенной длины.
|
static String |
align(String text,
Align align,
String padText,
int len)
Выравнивает текст до определенной длинны.
|
static String |
attrDecode(String attr)
Декодирование атрибута HTML
|
static String |
attrEncode(String text)
Кодирует текст в html экранированный текст.
|
static Iterable<String> |
convert(Iterable<String> source,
Convertor<String,String> convertor)
Обрабатывает набор строк согласно ковертору,
т.е. каждая строка пропускается через конвертор и его результат попадает результирующий набор
|
static String[] |
convert(String[] source,
Convertor<String,String> convertor)
Обрабатывает набор строк согласно ковертору,
т.е. каждая строка пропускается через конвертор и его результат попадает результирующий набор
|
static byte[] |
decodeHex(String bytes)
Возвращает баты их hex представления
|
static Byte[] |
decodeHexBytes(String bytes)
Возвращает баты их hex представления
|
static List<String> |
dropFirstEmptyLines(Iterable<String> lines)
Убирает из набора строк первые пустые (null или их длина меньше 1) строки
|
static String[] |
dropFirstEmptyLines(String[] lines)
Убирает из набора строк первые пустые (null или их длина меньше 1) строки
|
static List<String> |
dropLastEmptyLines(Iterable<String> lines)
Убирает из набора строк последние пустые (null или их длина меньше 1) строки
|
static String[] |
dropLastEmptyLines(String[] lines)
Убирает из набора строк последние пустые (null или их длина меньше 1) строки
|
static String |
encodeHex(byte[] bytes)
Возвращает символное-hex представление байтов
|
static String |
encodeHex(Byte[] bytes)
Возвращает символное-hex представление байтов
|
static String |
encodeStringConstant(String srcText)
Кодирует текст в строковую констануту вида языка С.
|
static String |
encodeStringConstant(String srcText,
char quoteChar)
Кодирует текст в строковую констануту вида языка С.
|
static String |
format(String format,
Number num)
Форматирование числа
|
static String |
getHex(byte byteValue)
Возвращает двух символьное представление байта
|
static String |
getHex(byte[] bytes)
Возвращает символное-hex представление байтов
|
static String |
getHex(Byte[] bytes)
Возвращает символное-hex представление байтов
|
static Map<String,String> |
getText2HtmlCharMap()
Карта преобразования текста в html валидный текст
|
static String |
htmlDecode(String html)
Декодирует текст из html кодировки
|
static String |
htmlEncode(String text)
Кодирует текст в html экранированный текст.
|
static boolean |
in(String src,
Iterable<String> list) |
static boolean |
in(String src,
String... arr) |
static Iterable<String> |
indent(Iterable<String> source,
String indent) |
static String[] |
indent(String[] sourceLines,
String indent)
Добавляет отступ
|
static String |
indent(String srcText,
String indent) |
static String |
indent(String source,
String lineDelim,
String indent)
Добавляет отступ в начало каждой строки
|
static int[] |
indexesOf(Predicate<String> src,
Iterable<String> arr) |
static int[] |
indexesOf(Predicate<String> src,
String... arr) |
static int |
indexOf(String src,
Iterable<String> list) |
static int |
indexOf(String src,
String... arr) |
static int |
indexOfNonWSChar(String text)
Возвращает первый индекс не пробельного символа
|
static int |
indexOfNonWSChar(String text,
int begin,
int endexclusive)
Возвращает первый индекс не пробельного символа
|
static String |
join(Iterable<String> lines,
String glue)
Объединяет строки вставляя между ними заданную строку
|
static String |
join(Iterable<String> lines,
String glue,
boolean withNulls)
Объединяет строки вставляя между ними заданную строку
|
static String |
join(Iterable<String> lines,
String glue,
int from,
int count,
boolean withNulls)
Объединяет строки вставляя между ними заданную строку
|
static String |
join(String[] lines,
String glue)
Объединяет строки вставляя между ними заданную строку
|
static String |
join(String[] lines,
String glue,
int from,
int count)
Объединяет строки вставляя между ними заданную строку
|
static String |
join(String[] lines,
String glue,
int from,
int count,
boolean withNulls)
Объединяет строки вставляя между ними заданную строку
|
static String |
lookupText(String source,
int beginIndex,
int len)
Возвращает строку из указанной позиции заданной или меньше длинны
|
static boolean |
matchText(String source,
String needly,
int beginIndex,
boolean ignoreCase)
Сравнивает часть текста с образцом
|
static Pair<Integer,String> |
nextNewLine(String text,
int beginIndex)
Ищет начало новой строки, учитывает различ. варианты перевода строк
|
static Text.ParseStringResult |
parseStringConstat(String constant,
int startIndex)
Анализирует текстовую константу языка С Синтаксис строки
Константа ::= {Пробельный символ} Кавычки {Кодированный символ} Кавычки |
static Map<String,String> |
queryStringDecodeMap(String queryString)
Декодирует QueryString
|
static Map<String,List<String>> |
queryStringDecodeMultiMap(String queryString)
Декодирует QueryString
|
static String |
queryStringEncodeMap(Map<String,String> map,
boolean allowNullKey,
boolean allowNullValue)
Кодирует карту в форме QueryString
|
static String[] |
queryStringKeyValueSplit(String keyValuePair,
boolean allowNullValue)
Разделяет кодированную пару ключ/значение (QueryString) на декодированные пары
|
static List<String> |
queryStringSplit(String queryString,
Iterable<String> specChars,
boolean specCharsIgnoreCase,
Convertor<String,String> specCharConv,
boolean checkComment)
Разделяет query string по символу амперсанда на наборы ключ/значени
|
static String |
repeat(String text,
int count)
Повторяет текст указанное кол-во раз.
|
static String[] |
split(String src,
String splitter)
Разделяет строку на подстроки, где в качестве разделитя указана строка.
|
static Iterable<String> |
splitIterable(String src,
String splitter) |
static String[] |
splitNewLines(String line)
Делит текст на строки согласно символам перевода строк: CR+LF/CR/LF (\r\n, \r, \n).
|
static Iterable<String> |
splitNewLinesIterable(String text) |
static String |
trimEnd(String text,
String trimText)
Возвращает строку исключая указанный текст (если он присуствует 1 или более раз) в конце.
|
static String |
trimStart(String text)
Удаляет пробельные символы с начала строки
|
static String |
trimStart(String text,
int max)
Удаляет пробельные символы с начала строки
|
static String |
trimStart(String text,
String trimText)
Возвращает строку исключая указанный текст (если он присуствует 1 или более раз) в начале.
|
static String |
urlDecode(String text)
Декодирует текст методом URL-encoding, используя кодировку UTF-8
|
static String |
urlDecode(String text,
String charset)
Декодирует текст методом URL-encoding
|
static String |
urlEncode(String text)
Кодирует текст методом URL-encoding, используя кодировку UTF-8
|
static String |
urlEncode(String text,
String charset)
Кодирует текст методом URL-encoding
|
static Pattern |
wildcard(String wildcard,
boolean escapeAllowed,
boolean ignoreCase)
Создает шаблон регулярного выражения из маски (*?)
|
static String[] |
wordWrap(String text,
int maxwidth)
Перенос слов на несколько строк.
|
static Iterable<String> |
wordWrapIterable(String text,
int maxwidth) |
public static String getHex(byte[] bytes)
bytes - Байтыpublic static String getHex(Byte[] bytes)
bytes - Байтыpublic static String getHex(byte byteValue)
byteValue - байтpublic static String encodeHex(byte[] bytes)
bytes - байтыpublic static String encodeHex(Byte[] bytes)
bytes - байтыpublic static byte[] decodeHex(String bytes)
bytes - - символное-hex представление байтовpublic static Byte[] decodeHexBytes(String bytes)
bytes - - символное-hex представление байтовpublic static Map<String,String> getText2HtmlCharMap()
public static String htmlDecode(String html)
html - HTML кодировка (допускется null)public static String htmlEncode(String text)
text - Исходный текст (допускется null)public static String attrEncode(String text)
text - Исходный текст (допускется null)public static String attrDecode(String attr)
attr - Атрибут HTML кодированныйpublic static String urlDecode(String text)
text - Кодированый текстpublic static String urlDecode(String text, String charset)
text - Кодированый текстcharset - Кодировкаpublic static String urlEncode(String text)
text - Текстpublic static String urlEncode(String text, String charset)
text - Текстcharset - кодировкаpublic static String queryStringEncodeMap(Map<String,String> map, boolean allowNullKey, boolean allowNullValue)
map - КартаallowNullKey - true - допускается использование null ключейallowNullValue - true - допускается использование null значенийpublic static Map<String,String> queryStringDecodeMap(String queryString)
queryString - строка запросаpublic static Map<String,List<String>> queryStringDecodeMultiMap(String queryString)
queryString - строка запросаpublic static String[] queryStringKeyValueSplit(String keyValuePair, boolean allowNullValue)
keyValuePair - строка ключ/значение, разделенные знаком РавноallowNullValue - true - допускается отсуствие значения или/и символа Равноpublic static List<String> queryStringSplit(String queryString, Iterable<String> specChars, boolean specCharsIgnoreCase, Convertor<String,String> specCharConv, boolean checkComment)
queryString - query строкаspecChars - перечень специальных символов, таких как амперсанд - & и т.д.
Если указано null - то испобльзуется значение getText2HtmlCharMap()specCharsIgnoreCase - - true - игнорировать регистр букв в специальных символахspecCharConv - функция конвертации специальных симвлов в нормальные,
если указанно null, то используется значение из getText2HtmlCharMap()checkComment - если true - то проверяет наличие символа решетки,
и если сам символ есть, и все что за ним следует - не попадет в резуьтатgetText2HtmlCharMap()public static String lookupText(String source, int beginIndex, int len)
source - исходный текстbeginIndex - позиция, больше или равно 0, может быть больше длины строкиlen - длина искомого текста (может быть за пределами границ текста), больше или равен 0public static boolean matchText(String source, String needly, int beginIndex, boolean ignoreCase)
source - текстneedly - образецbeginIndex - индекс (может быть за пределами строки, но не меньше 0)ignoreCase - игнорировать регистрpublic static Pair<Integer,String> nextNewLine(String text, int beginIndex)
text - ТекстbeginIndex - с какого индекса начать поискpublic static String[] dropFirstEmptyLines(String[] lines)
lines - Набор строкpublic static List<String> dropFirstEmptyLines(Iterable<String> lines)
lines - Набор строкpublic static String[] dropLastEmptyLines(String[] lines)
lines - Набор строкpublic static List<String> dropLastEmptyLines(Iterable<String> lines)
lines - Набор строкpublic static Iterable<String> convert(Iterable<String> source, Convertor<String,String> convertor)
source - Исходный набор строкconvertor - Конвертор строкиpublic static String[] convert(String[] source, Convertor<String,String> convertor)
source - Исходный набор строкconvertor - Конвертор строкиpublic static int indexOfNonWSChar(String text, int begin, int endexclusive)
text - Текстbegin - Индекс с которого начинается поискendexclusive - Индекс исключ. по которй ведется поискpublic static int indexOfNonWSChar(String text)
text - Текстpublic static String trimStart(String text)
text - Строкаpublic static String trimStart(String text, int max)
text - Строкаmax - Максимальное кол-во удаляемых пробельных символов или -1public static String trimStart(String text, String trimText)
trimStart( "ababtcv" , "ab" ) // Результат "tcv"
text - Исходная строкаtrimText - Текст который необходимо удалитьpublic static String trimEnd(String text, String trimText)
trimEnd( "ababtcvtcv" , "tcv" ) // Результат "abab"
text - Исходная строкаtrimText - Текст который необходимо удалитьpublic static String repeat(String text, int count)
text - Текстcount - Сколько раз повторить ( <= 0 - пустая строка; == 1 - исходная; >= 2 - соответ. кол-во
повторов)public static String[] split(String src, String splitter)
| Исходная строка | Разделитель | Результат |
| "delim" | "delim" | "" |
| "delimabc" | "delim" | "" "abc" |
| "abcdelimabc" | "delim" | "abc" "abc" |
| "abcdelim" | "delim" | "abc" "" |
| "abc" | "delim" | "abc" |
| "abc" | "" | "abc" |
src - Исходня строкаsplitter - Разделительpublic static String join(Iterable<String> lines, String glue)
lines - Строкиglue - Вставкаpublic static String join(Iterable<String> lines, String glue, boolean withNulls)
lines - Строкиglue - ВставкаwithNulls - включить также пустые ссылкиpublic static String join(Iterable<String> lines, String glue, int from, int count, boolean withNulls)
lines - Строкиglue - Вставкаfrom - С какой строки начать (withNulls - влияет на нумерацию)count - Сколько строк объединять? -1 - без ограниченияwithNulls - включить также пустые ссылкиpublic static String join(String[] lines, String glue, int from, int count)
lines - Строкиglue - Вставкаfrom - С какой строки начатьcount - Сколько строк объединятьpublic static String join(String[] lines, String glue, int from, int count, boolean withNulls)
lines - Строкиglue - Вставкаfrom - С какой строки начатьcount - Сколько строк объединятьwithNulls - включить также пустые ссылкиpublic static String join(String[] lines, String glue)
lines - Строкиglue - Вставкаpublic static String[] wordWrap(String text, int maxwidth)
text - Исходный текстmaxwidth - Максимальная длина колонкиpublic static String[] align(String[] lines, Align align, String padText, int len)
lines - Текстalign - Как выравнивать.padText - Текст который добавляется для выравнивания (Возможно null - тогда будет использоваться один пробел)len - Длина текста, не меньше нуля по каторой выравнивается.public static Iterable<String> align(Iterable<String> lines, Align align, String padText, int len)
public static String align(String text, Align align, String padText, int len)
text - Текстalign - Как выравнивать. padText - Текст который добавляется для выравнивания (Возможно null - тогда будет использоваться один пробел)len - Длина текста, не меньше нуля по каторой выравнивается.public static String indent(String source, String lineDelim, String indent)
source - Исходный текстlineDelim - Разделитель строкindent - Отступpublic static String[] indent(String[] sourceLines, String indent)
sourceLines - Исходный набор строкindent - Отступpublic static String[] splitNewLines(String line)
line - Текстpublic static String encodeStringConstant(String srcText, char quoteChar)
Примеры:
| abc | "abc" |
| abc "dfg" sss | "abc \"dfg\" sss" |
| abc\sss | "abc\\sss" |
srcText - Исходный текстquoteChar - Символ экранированияpublic static String encodeStringConstant(String srcText)
Примеры:
| abc | "abc" |
| abc "dfg" sss | "abc \"dfg\" sss" |
| abc\sss | "abc\\sss" |
srcText - Исходный текстpublic static Text.ParseStringResult parseStringConstat(String constant, int startIndex)
Синтаксис строки
Константа ::= {Пробельный символ} Кавычки {Кодированный символ} Кавычки
Пробельный символ ::= пробел | перевод строи | возврат корретки | табуляция
Кавычки ::= '"'
Кодированный символ ::= ( '\' экранированный символ ) | обычный символ
Экранированный символ ::= 'n' | 'r' | 't' | '"' | '\'
constant - Константа (или null)startIndex - Индекс (0 ... длина строки)public static Pattern wildcard(String wildcard, boolean escapeAllowed, boolean ignoreCase)
wildcard - МаскаescapeAllowed - Допускается в маске использовать экранирующие символыignoreCase - Игнорировать регистрpublic static String format(String format, Number num)
format - Формат числа:
Пример форматов:
| +00000000.000 | 12.23456 | "+00012345.235" |
| 00000000.000 | 12.23456 | "00012345.235" |
| ### ###.## ## | 1234567.2345678 | "1 234 567.23 45 67 8" |
| +###000.00 | 12.23456 | " +012.23" |
| ###000.0# | 12.23456 | " 012.23" |
| ###000.00#### | 12.2345 | " 012.2345 " |
| ###000.00#### | 12.23 | " 012.23 " |
| ###000.00#### | 12.2 | " 012.20 " |
| # | 1234.2345 | "1234" |
| +###000,00####*100 | 12 | " +1200 " |
| +###000,00####*-5.5-2.1 | 12 | " -68.1 " |
num - ЧислоFullDecFormatCopyright © 2018. All rights reserved.