Редактор nano. Подсветка синтаксиса, нежадный режим.
use "(\"[^\"]*?\")"
Типа, сначала идет кавычка, потом любое количество (0 или более) не кавычек, за которыми идет снова кавычка.
А почему мое выражение работало не так?
А почему мое выражение работало не так?
Еще пришлось дополнить на случай наличия \" внутри кавычек. Теперь вроде работает хорошо. Написал по аналогии и для одинарной кавычки.
color red "\"([^"]|\\\")*?\""
color red "'([^']|\\')*?'"
color red "\"([^"]|\\\")*?\""
color red "'([^']|\\')*?'"
А, а я знака вопросега-то и не заметил =)
Глючит чота видимо, и сотри его на всякий случай, вдруг он какую-нибудь загадочную семантику собой олицетворяет!
Глючит чота видимо, и сотри его на всякий случай, вдруг он какую-нибудь загадочную семантику собой олицетворяет!
Может регулярные выражения в nano не поддерживают "нежадность"?
Может регулярные выражения в nano не поддерживают "нежадность"?как же так, ведь в примере фиджея и в моем последнем есть "нежадное" выражение *?
ну вот они его мб и не поддерживают.
я, честно говоря, никогда особо этой нежадностью не пользовался.
если есть возможность, пишу так, как запостил.
я, честно говоря, никогда особо этой нежадностью не пользовался.
если есть возможность, пишу так, как запостил.
есть "нежадное" выражение *?В этом случае "?" означает, что предудущее может повториться 0 или 1 раз, то есть ничего не меняет, т.к. "*" тоже 0 позволяет.
А если есть поддержка "нежадности", то сочетание "*?" уже будет истолковано особенно.
как же так, ведь в примере фиджея и в моем последнем есть "нежадное" выражение *?В примере Фиджея нежадность не имеет никакого значения, знак вопроса можно выкинуть.
Оставить комментарий
Elina74
Например, есть у меня на одной строке перловской программы две разные текстовые строкиif(col="1" or col="2"){
;
}
Хочу, чтобы строки выглядели подсвеченными.
Пишу в nanorc следующее:
syntax "perl" "\.p[lm]$"
color red "(\".*?\")"
получаю:
if(col="1" or col="2"){
;
}
а вовсе не то, что хотелось
if(col="1" or col="2"){
;
}
Это баг nano или я чего-то глубинного не понимаю в регулярных выражениях?
nano --version
GNU nano version 2.0.2 (compiled 16:27:57, Dec 22 2006)
Email: nano-editor.org Web: http://www.nano-editor.org/
Compiled options: --disable-wrapping-as-root --enable-color --enable-extra --enable-multibuffer --enable-nanorc --enable-utf8