# Альтернация (или) | Альтернация -- термин в регулярных выражениях, которому в русском языке соответствует слово "ИЛИ". Она обозначается символом вертикальной черты | и позволяет выбирать между вариантами. [cut] Например, нам нужно найти языки программирования: HTML, PHP, Java и JavaScript. Соответствующее регулярное выражение: html|php|java(script)?. Пример использования: ```js //+ run var reg = /html|php|css|java(script)?/gi var str = "Сначала появился HTML, затем CSS, потом JavaScript" alert( str.match(reg) ) // 'HTML', 'CSS', 'JavaScript' ``` Мы уже знаем похожую вещь -- квадратные скобки. Они позволяют выбирать между символами, например gr[ae]y найдёт gray, либо grey. Альтернация работает уже не посимвольно, а на уровне фраз и подвыражений. Регэксп A|B|C обозначает поиск одного из выражений: `A`, `B` или `C`, причём в качестве выражений могут быть другие, сколь угодно сложные регэкспы. Для указания границ альтернации используют скобки `(...)`, например: before(XXX|YYY)after будет искать beforeXXXafter или beforeYYYafter.