В Vim, если я хочу, делают поиск, который соответствует "planA" или "planB", я знаю, что могу сделать это:
/plan[AB]
Это работает, потому что regex допускает или A или B как его набор символов.
Но как я могу указать одну из двух полных строк? Например, "planetAwesome" или "planetTerrible"?
Это будет соответствовать обоим из них, наряду с "planetAnythingHereAsLongAsItsJustLetters":
planet\([a-zA-Z]*\)
Как я могу соответствовать только строкам, которые соответствуют "planetAwesome" или "planetTerrible" точно?
/planet\(Awesome\|Terrible\)
Видеть соответствующую документацию, проблему :help /
, и прокрутите вниз к разделу “The definition of a pattern”.
Для добавления к ответу Gilles Вы могли бы хотеть добавить несколько вещей там:
/\<planet\(Awesome\|Terrible\)\>
\<
отмечает начало 'слова' (по существу буквенно-цифровой индикатор)
\>
отмечает конец 'слова' (по существу буквенно-цифровой индикатор)