Ответ 1
Вы можете использовать:
rel=".\{-}"
\{-}
используется для non- жадного соответствия в VIM
У меня есть файл, который
<a href="blah.com" rel="blahblah" style="textdecoration:none;">blah</a>
Я хочу совместить rel="blahblah"
но когда я делаю \rel=".*"
, он соответствует rel="blahblah" style="textdecoration:none;"
Я пробовал rel=".*\{-\}"
, но это дает ошибку nested \{
Вы можете использовать:
rel=".\{-}"
\{-}
используется для non- жадного соответствия в VIM
Попробуйте [^"]
вместо .
. Последний является "жадным" и будет соответствовать как можно большему количеству символов.
[d-r13579]
в регулярных выражениях используется для соответствия "классам символов": в этом случае любая маленькая буквенная буква в диапазоне от d
до r
или нечетная цифра. Если вы начинаете класс с ^
, то это отрицает значение.
Таким образом, [^"]
означает символ, кроме двойной кавычки, а "[^"]*"
означает две двойные кавычки с любым количеством произвольных символов между ними, кроме двойных кавычек.
По умолчанию регулярные выражения являются жадными.
s".\{-}"/aaaaaaa/
работает для меня
{-} означает короткое замыкание выражения, соответствующего кратчайшему.
Я считаю, что использование \{-}
запутывает, поэтому в таких случаях я обычно буду использовать что-то вроде "[^"]*"
.