1. Проверка электронной почты

Вот пример использования JavaScript и регулярных выражений (регулярных выражений) для проверки того, является ли данная строка действительным адресом электронной почты:

const isValidEmail = (email) => {
  // Define a regular expression for email validation
  const emailRegex = /^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;
  
  // Test the email against the regular expression
  if (emailRegex.test(email)) {
    // Email is valid
    return true;
  } else {
    // Email is invalid
    return false;
  }
}

// Example usage:
console.log(isValidEmail("[email protected]"));  // true
console.log(isValidEmail("invalid.email"));      // false

В этом примере функция isValidEmail принимает адрес электронной почты в качестве аргумента и использует метод test() объекта регулярного выражения, чтобы проверить, соответствует ли электронная почта шаблону, определенному регулярным выражением. Регулярное выражение определяется с использованием определенного шаблона, который может проверять адрес электронной почты на наличие таких символов, как @ и .. Если адрес электронной почты совпадает, функция возвращает true, иначе возвращает false.

2. Проверка имени

Вот пример использования JavaScript и регулярных выражений (регулярных выражений) для проверки того, является ли заданная строка допустимым именем:

const isValidName = (name) => {
  // Define a regular expression for name validation
  const nameRegex = /^[a-zA-Z]+(([',. -][a-zA-Z ])?[a-zA-Z]*)*$/;
  
  // Test the name against the regular expression
  if (nameRegex.test(name)) {
    // Name is valid
    return true;
  } else {
    // Name is invalid
    return false;
  }
}

// Example usage:
console.log(isValidName("John Doe"));    // true
console.log(isValidName("John-Doe"));    // true
console.log(isValidName("John_Doe"));    // false
console.log(isValidName("123John"));     // false

В этом примере функция isValidName принимает имя в качестве аргумента и использует метод test() объекта регулярного выражения, чтобы проверить, соответствует ли имя шаблону, определенному регулярным выражением. Регулярное выражение определяется с использованием определенного шаблона, который может проверять имя, что позволяет использовать только алфавиты, апострофы, запятую, точку, пробел и тире. Если имя совпадает, функция возвращает true, иначе возвращает false.

3. Проверка номера телефона

Вот пример использования JavaScript и регулярных выражений (регулярных выражений) для проверки того, является ли данная строка действительным номером телефона в Индонезии:

const isValidPhoneNumber = (phoneNumber) => {
  // Define a regular expression for phone number validation
  const phoneRegex = /^(?:\+62|62|0)[2-9]\d{7,11}$/;
  
  // Test the phone number against the regular expression
  if (phoneRegex.test(phoneNumber)) {
    // Phone number is valid
    return true;
  } else {
    // Phone number is invalid
    return false;
  }
}

// Example usage:
console.log(isValidPhoneNumber("+62212341234"));    // true
console.log(isValidPhoneNumber("+62 812341234"));    // true
console.log(isValidPhoneNumber("0812341234"));       // true
console.log(isValidPhoneNumber("0212341234"));       // true
console.log(isValidPhoneNumber("+62212341234567"));  // false

В этом примере функция isValidPhoneNumber принимает номер телефона в качестве аргумента и использует метод test() объекта регулярного выражения, чтобы проверить, соответствует ли номер телефона шаблону, определенному регулярным выражением. Регулярное выражение определяется с использованием определенного шаблона, который может проверять индонезийский номер телефона, что позволяет использовать номер телефона, начинающийся с +62, 62 или 0, за которым следуют цифры 2-9 и 7-11. Если номер телефона совпадает, функция возвращает true, иначе возвращает false.

4. Надежная проверка пароля

Вот пример использования JavaScript и регулярных выражений (регулярных выражений) для проверки того, является ли данная строка достаточно надежным паролем, отвечающим определенным критериям, таким как минимальная длина 8 символов и использование строчных и прописных букв, цифр и специальных символов:

const isStrongPassword = (password) => {
  // Define a regular expression for password validation
  const passwordRegex = /^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[!@#\$%\^&\*])(?=.{8,})/;
  
  // Test the password against the regular expression
  if (passwordRegex.test(password)) {
    // Password is strong
    return true;
  } else {
    // Password is weak
    return false;
  }
}

// Example usage:
console.log(isStrongPassword("P@ssword1"));    // true
console.log(isStrongPassword("password1"));    // false
console.log(isStrongPassword("P@ssword"));     // false
console.log(isStrongPassword("p@ssword1"));    // false
console.log(isStrongPassword("P@ssword12345678"));  // true

В этом примере функция isStrongPassword принимает пароль в качестве аргумента и использует метод test() объекта регулярного выражения, чтобы проверить, соответствует ли пароль шаблону, определенному регулярным выражением. Регулярное выражение определяется с использованием определенного шаблона, который проверяет наличие хотя бы одной строчной буквы, одной прописной буквы, одной цифры, одного специального символа и не менее 8 символов. Если пароль совпадает, функция возвращает true, в противном случае — false.

5. Форматирование индонезийской рупии

Вот пример функции JavaScript, которая преобразует число в стандартный формат индонезийских рупий:

const toRupiah = (number) => {
  let rupiah = '';
  const numberStr = number.toString();
  const numberStrRev = numberStr.split('').reverse().join('');
  for (var i = 0; i < numberStrRev.length; i++) {
    if (i % 3 == 0) {
      rupiah += numberStrRev[i] + '.';
    } else {
      rupiah += numberStrRev[i];
    }
  }
  const rupiahRev = rupiah.split('').reverse().join('');
  return 'Rp. ' + rupiahRev.substring(0, rupiahRev.length - 1);
}

// Example usage:
console.log(toRupiah(1234));     // Rp. 1.234
console.log(toRupiah(123456789)); // Rp. 123.456.789

В этом примере функция toRupiah принимает число в качестве аргумента, преобразует его в строку, а затем инвертирует. Затем он использует цикл for для добавления '.' (точка) через каждые 3 цифры перевернутого числа. Затем он переворачивает его и добавляет префикс «Rp. ' Важно отметить, что эта функция только форматирует число в соответствии со стандартом индонезийской рупии, она не выполняет никакого преобразования значения валюты.