В порядке появления языки sed
, awk
, perl
, python
.
sed
программа является потоковым редактором и разработана для применения действий от сценария до каждой строки (или, в более общем плане, к указанным диапазонам строк) входного файла или файлов. Его язык основан ed
, редактор Unix, и хотя это имеет условные выражения и так далее, трудно работать с для сложных задач. Можно работать незначительные чудеса с ним - но по стоимости для волос на голове. Однако это является, вероятно, самым быстрым из программ при пробовании выполнить задач в его сфере компетенции. (Это имеет наименее мощные регулярные выражения обсужденных программ - достаточный для многих целей, но конечно не PCRE - Совместимые с Perl Регулярные выражения)
awk
программа (имя от инициалов его авторов - Aho, Weinberger и Kernighan) является инструментом первоначально для форматирования отчетов. Это может использоваться в качестве souped sed
; в его более свежих версиях это в вычислительном отношении завершено. Это использует интересную идею - программа основана 'на шаблонах подобранные' и 'меры, принятые, когда шаблон соответствует'. Шаблоны довольно мощны (Расширенные регулярные выражения). Язык для действий подобен C. Одна из основных характеристик awk
- то, что это разделяет входные строки на поля автоматически.
Perl был записан частично как awk-уничтожитель и sed-уничтожитель. Две из программ, которым предоставляют его, a2p
и s2p
для преобразования awk
сценарии и sed
сценарии в Perl. Perl является одним из самых ранних из следующего поколения языков сценариев (Tcl/Tk может, вероятно, требовать первенства). Это имеет мощную интегрированную обработку регулярного выражения со значительно более мощным языком. Это обеспечивает доступ почти ко всем системным вызовам и имеет расширяемость модулей CPAN. (Ни awk
, ни sed
расширяемо.) Одним из девизов Perl является "TMTOWTDI - существует больше чем один способ сделать это" (объявленный "tim-подхалимом"). Perl имеет 'объекты', но это - больше дополнения, чем фундаментальная часть языка.
Python был записан в последний раз, и вероятно частично как реакция на Perl. Это имеет некоторые интересные синтаксические идеи (делающий отступ для указания на уровни - никакие фигурные скобки или эквиваленты). Это более существенно объектно-ориентировано, чем Perl; это столь же расширяемо как Perl.
хорошо - когда использовать каждого?
я не знаю ни о чем, что может сделать Perl, тот Python не может, ни наоборот. Выбор между этими двумя зависел бы от других факторов. Я изучил Perl, прежде чем был Python, таким образом, я склонен использовать его. Python меньше аккумулировал синтаксис и обычно несколько более прост учиться. Perl 6, когда это станет доступным, будет захватывающей разработкой.
(Отмечают, что 'обзоры' Perl и Python, в частности, являются горестно неполными; целые книги могли быть записаны по теме.)
Просто добавьте к нему CSS, и вид по умолчанию исчезнет.
input.button, input.submit {
border: 1px outset blue;
background-color: lightBlue;
}
редактировать: изменил селектор, чтобы вместо этого использовать имя класса, как предложено в комментариях.
Вы можете использовать элемент HTML вместо типа ввода. Его довольно легко стилизовать.
<a class="test">click me</a>
<style>
.test
{
cursor: pointer;
background-color:#E0EAF1;
border-bottom:1px solid #3E6D8E;
border-right:1px solid #7F9FB6;
color:#3E6D8E;
font-size:90%;
line-height:2.2;
margin:2px 2px 2px 0;
padding:3px 4px;
text-decoration:none;
white-space:nowrap;
}
</style>
Так создается кнопка переполнения стека.