Вопрос такой же простой, как и заголовок: Как убедиться, что строка содержит расчет.Проверьте, содержит ли строка вычисления
У меня есть строка, которая должна содержать расчет. Строка может быть примерно такой: "10 * 10/2 * 3"
. Но всегда есть люди, которые хотят сломать вещи, поэтому я хочу проверить, является ли это расчет. Пользователь может заполнить что-то вроде этого: "alert('hi!')"
.
Когда я использую eval()
, он все равно предупредит пользователя (если пользователь заполнил: "alert()"
).
Кто-нибудь знает, как я могу проверить, содержит ли строка расчет и ничего больше?
возможно с регулярным выражением и белым списком для знаков/цифр. –
Не могли бы вы привести пример регулярного выражения для моего дела @NinaScholz? –
Пожалуйста, не используйте 'eval' с введенным пользователем кодом. Это может привести к проблемам :-( – Tuvia