// define comparators
final Comparator<Dog> SORT_BY_NAME_ASC = Comparator.comparing(Dog::getName);
final Comparator<Dog> SORT_BY_TAIL_LENGTH_ASC = Comparator.comparing(Dog::getTailLength);
// define a list
List<Dog> kennelList = Collections.emptyList();
// sort list items (you can swap comparators)
kennelList.sort(SORT_BY_NAME_ASC.thenComparing(SORT_BY_TAIL_LENGTH_ASC));
// retrieve items with at least required tailLength
public static List<Dog> filterByTailLength(List<Dog> kennelList, double tailLength) {
return kennelList.stream()
.filter(dog -> Double.compare(dog.getTailLength(), tailLength) >= 0)
.collect(Collectors.toList());
}
В C# Вы могли записать это как:
resultString = Regex.Replace(subjectString, @"(<.*?id\s*=\s*)(\w+)(.*?>)", "$1'$2'$3", RegexOptions.Multiline);
В VB.Net это просто было бы:
ResultString = Regex.Replace(SubjectString, "(<.*?id\s*=\s*)(\w+)(.*?>)", "$1'$2'$3", RegexOptions.Multiline)
В каноническом Perl Вы могли записать это как:
$subject =~ s/(<.*?id\s*=\s*)(\w+)(.*?>)/$1'$2'$3/mg;
В PHP:
$result = preg_replace('/(<.*?id\s*=\s*)(\w+)(.*?>)/m', '$1\'$2\'$3', $subject);
В Java:
resultString = subjectString.replaceAll("(?m)(<.*?id\\s*=\\s*)(\\w+)(.*?>)", "$1'$2'$3");
В JavaScript:
result = subject.replace(/(<.*?id\s*=\s*)(\w+)(.*?>)/mg, "$1'$2'$3");
Как насчет этого:
%s/"<input id=\(.\)\/>/"<input id='\1'\/>/g
Это также работало бы:
%s/\("<input id=\)\(.\)\/>/\1'\2'\/>/g
Трудно действительно ответить на это со всего одной небольшой выборкой. Для данного демонстрационного текста можно искать regex:
=(\w)
и замените его:
='$1'
или:
='\1'
В зависимости от того, работаете ли язык программирования Вы с, интерпретирует 1$ или \1 как ссылка на первую группу фиксации в тексте замены.
Этот тривиальный поиск-и-замена работает отлично над Вашим данным демонстрационным текстом.
Я боюсь, что это не будет работать над Вашими фактическими данными. Если это так, затем поэтому Ваш демонстрационный текст не описателен для Ваших фактических данных. Самая твердая часть в создании регулярных выражений должна выяснить то, чему Вы хотите соответствовать, и чему Вы не хотите соответствовать. Это - что-то, что необходимо указать в вопросе.