Это такой простой алгоритм.
$max = -9999999; //will hold max val
$found_item = null; //will hold item with max val;
foreach($arr as $k=>$v)
{
if($v['Total']>$max)
{
$max = $v['Total'];
$found_item = $v;
}
}
echo "max value is $max";
print_r($found_item);
Используйте Matcher.quoteReplacement в строке замены.
К сожалению, «простота использования» в этом случае конфликтует со строгой типизацией. [Объяснение: объект статического типа Java java.lang.String
- это любая неизменяемая последовательность char
s. Он не сообщает вам формат необработанных данных. В этом сценарии у нас есть текст, который, вероятно, имеет значение для пользователя, текст, закодированный на мини-языке для замены, и текст, закодированный на мини-языке для шаблона. В системе типов Java нет способа их различить (хотя вы можете делать забавные вещи с помощью средств проверки типов на основе аннотаций, часто во избежание уязвимостей XSS или SQL / инъекции команд). Для мини-языка шаблонов вы можете преобразовать его в форму Pattern. compile
, хотя это специфическое использование, и большинство методов API игнорируют его (для простоты использования). Можно написать эквивалентный ReplacementText.compile
. Кроме того, вы можете игнорировать мини-языки и использовать библиотеки как «DSL». Но все это не способствует случайной простоте использования.]
Другой вариант:
matcher.appendReplacement(stringbuffer, "");
stringbuffer.append(replacement);
appendReplacement ()
обрабатывает задание копирования текста между совпадениями, затем StringBuffer # append ()
добавляет вашу замену текст без фальсификации. Это особенно удобно, если вы генерируете замещающий текст динамически, как в Rewriter Эллиота Хьюза.
Я заставил его работать со следующим, но мне больше нравится решение Тома Хотина: -)
private static Pattern escapePattern = Pattern.compile("\\$|\\\\");
replacement = escapePattern.matcher(replacement).replaceAll("\\\\$0");
matcher.appendReplacement(stringbuffer, replacement);
Решение Тома:
matcher.appendReplacement(stringbuffer, Matcher.quoteReplacement(replacement));