Простой способ использования параметризованных сообщений пользовательского интерфейса в Wicket?

grep -f filter.txt data.txt становится неуправляемым, когда filter.txt превышает пару тысяч строк и, следовательно, не является лучшим выбором для такой ситуации. Даже при использовании grep -f нам нужно помнить несколько вещей:

  • использовать опцию -x, если необходимо сопоставить всю строку во втором файле
  • используйте -F, если в первом файле есть строки, а не шаблоны
  • используйте -w для предотвращения частичных совпадений, не используя опцию -x

обсуждение этой темы (grep -f для больших файлов):

И этот пост рассказывает о grep -vf:


В итоге лучший способ обработки grep -f для больших файлов:

Соответствие всей строке:

awk 'FNR==NR {hash[[110]]; next} [110] in hash' filter.txt data.txt > matching.txt

Соответствие определенному полю во втором файле (с использованием разделителя ',' и поле 2 в этом примере):

awk -F, 'FNR==NR {hash[$1]; next} $2 in hash' filter.txt data.txt > matching.txt

и для grep -vf:

Соответствует всей строке:

awk 'FNR==NR {hash[[112]]; next} !([112] in hash)' filter.txt data.txt > not_matching.txt

Соответствует a конкретное поле в второй файл (используя разделитель ',' и поле 2 в этом примере):

awk -F, 'FNR==NR {hash[[113]]; next} !($2 in hash)' filter.txt data.txt > not_matching.txt

11
задан Jonik 25 April 2015 в 10:09
поделиться

1 ответ

В случае, если у Вас есть Модель в Вашем Компоненте, который содержит объект со значениями, к которым Вы хотите получить доступ от своих заполнителей как замены, можно записать:

new StringResourceModel("salutation.text", getModel());

Позволяют нам вообразить getModel(), тип возврата IModel<User>, и User содержит поля как firstName и lastName. В этом случае можно легко получить доступ firstName и lastName поля в строке свойства:

salutation.text=Hej ${firstName} ${lastName}, have a nice day!

Дополнительная информация можно найти здесь: https://ci.apache.org/projects/wicket/apidocs/8.x/org/apache/wicket/model/StringResourceModel.html#StringResourceModel-java.lan g. Строка-org.apache.wicket.model. IModel-

0
ответ дан 3 December 2019 в 04:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: