как можно сократить этот код?

let profile = message.text;
if (/^(фундаментальная информатика и информационные технологии|профиль 1)$/i.test(profile)) number = 1;
if (/^(строительство|профиль 2)$/i.test(profile)) number = 2;
if (/^(инженер по оборудованию|профиль 3)$/i.test(profile)) number = 3
if (/^(инспектор по технике безопасности|профиль 4)$/i.test(profile)) number = 4;
if (/^(бухгалтерский учёт, анализ и аудит|профиль 5)$/i.test(profile)) number = 5;
if (/^(продавец, контролёр-кассир|профиль 6)$/i.test(profile)) number = 6;
if (/^(современная фотография|профиль 7)$/i.test(profile)) number = 7;
if (/^(звукорежиссура аудиовизуальных искусств|профиль 8)$/i.test(profile)) number = 8;

Ответы (3 шт):

Автор решения: Алексей Шиманский

Самое простое сделать карту

const kvArray = [
  ['(фундаментальная информатика и информационные технологии|профиль 1)', 1], 
  ['(строительство|профиль 2)', 2],
  ['(инженер по оборудованию|профиль 3)', 3],
  // и так далее
]
const myMap = new Map(kvArray);
let profile = '(СТроиТельство|ПРОФиль 2)';

console.log(myMap.get(profile.toLowerCase()));


Если цифры по порядку, то можно даже в простой массив записать и использовать findIndex + 1

const kvArray = [
  ['(фундаментальная информатика и информационные технологии|профиль 1)'],
  ['(строительство|профиль 2)'],
  ['(инженер по оборудованию|профиль 3)'],
  // и так далее
]

let profile = '(СТроиТельство|ПРОФиль 2)';
let number = kvArray.findIndex(el => el == profile.toLowerCase()) + 1;
console.log(number);

→ Ссылка
Автор решения: Pavel Nazarian

Ну если строки только такие, то можно

let profile = message.text;
let number = profile[profile.length-2];
→ Ссылка
Автор решения: Sanya H

let profile = message.text;
let find = profile.match(/\s(\d+)\)$/);
let number = find ? find[1] : undefined;

→ Ссылка