Я хочу заменить прописные строки в:Regex чтобы соответствовать что-нибудь, строка, несколько строк, включая символ новой строки, не жадный в VIM
SELECT lower1, lower2, lower3 FROM lower4, lower5 WHERE
Я использую Vim заменить, чтобы заменить их в верхний регистр с этим регулярным выражением:
:%s/select\_.*\from\_.*\where/\U&/gic
регулярное выражение select\_.*\from\_.*\where
не хорошо, когда есть другие запросы: выберите
, например он выбирает все, что в этом запросе и влияет на строки, которые не могут быть в верхнем регистре
SELECT lower1, lower2, lower3 FROM lower4, lower5 WHERE lower1=cannot_be_uppercased
UNION all
SELECT lower1, lower2, lower3 FROM lower6, lower7 WHERE lower1=cannot_be_uppercased
Вы пытаетесь строчным все, кроме ключевых слов SQL? – JaredPar
Что не так с вашим регулярным выражением? Когда я попробовал это на ваших примерах, он, кажется, делает то, что вы просили. –
Я не уверен, чего вы ожидаете, но, возможно, вы хотите использовать не жадные кванторы \ {-} вместо жадного *. – Raimondi