Проверка единственной алфавитной строки в JavaScript

== сравнивает ссылки на объекты в Java и не является исключением для объектов String.

Для сравнения фактического содержимого объектов (в том числе String) необходимо использовать equals.

Если сравнение двух объектов String с использованием == оказывается true, это связано с тем, что объекты String были интернированы, а виртуальная машина Java имеет несколько ссылки указывают на тот же экземпляр String. Не следует ожидать сравнения одного объекта String, содержащего то же содержимое, что и другой объект String, используя == для оценки как true.

13
задан Click Upvote 15 March 2010 в 21:30
поделиться

4 ответа

Регулярное выражение, требующее хотя бы одну букву или скобку, и разрешать только буквы и скобки:

function isAlphaOrParen(str) {
  return /^[a-zA-Z()]+$/.test(str);
}

При необходимости измените регулярное выражение:

  • / ^ [a-zA-Z ()] * $ / - также возвращает true для пустой строки
  • / ^ [a-zA-Z ()] $ / - возвращает true только для отдельных символов .
  • / ^ [a-zA-Z ()] + $ / - также позволяет использовать пробелы
39
ответ дан 1 December 2019 в 17:47
поделиться

Вы можете использовать регулярные выражения...

functions isLetter(str) { return str.match("^[a-zA-Z()]+$"); }

Упс... моя вина... это неправильно... должно быть

functions isLetter(str) {
    return "^[a-zA-Z()]+$".test(str);
}

Как сказано в другом ответе... извините

1
ответ дан 1 December 2019 в 17:47
поделиться

Вот, пожалуйста:

function isLetter(s)
{
  return s.match("^[a-zA-Z\(\)]+$");    
}
5
ответ дан 1 December 2019 в 17:47
поделиться

Если память не изменяет, это должно работать в javascript:

function containsOnlyLettersOrParenthesis(str)
(
    return str.match(/^([a-z\(\)]+)$/i);
)
2
ответ дан 1 December 2019 в 17:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: