Как я могу извлечь имя пользователя из адреса электронной почты с помощью javascript? Учитывая следующий адрес электронной почты - [email protected] - как я могу извлечь кого-либо из адреса с помощью javascript? Спасибо. Ответ 1 Регулярное выражение с совпадением с проверками безопасности var str="[email protected]"; var nameMatch = str.match(/^([^@]*)@/); var name = nameMatch ? nameMatch[1] : null; написанный как одна строка var name = str.match(/^([^@]*)@/)[1]; Регулярное выражение с заменой с проверками безопасности var str="[email protected]"; var nameReplace = str.replace(/@.*$/,""); var name = nameReplace!==str ? nameReplace : null; написанный как одна строка var name = str.replace(/@.*$/,""); Сплит-строка с проверками безопасности var str="[email protected]"; var nameParts = str.split("@"); var name = nameParts.length==2 ? nameParts[0] : null; написанный как одна строка var name = str.split("@")[0]; Тесты производительности каждого примера Тесты JSPerf Ответ 2 "[email protected]".split('@')[0] Ответ 3 Имя пользователя: "[email protected]".replace(/^(.+)@(.+)$/g,'$1') сервер: "[email protected]".replace(/^(.+)@(.+)$/g,'$2') Ответ 4 string.split (разделитель, лимит) - это метод, который вы хотите "[email protected]".split("@")[0] Ответ 5 var email = "[email protected]"; var username = email.substring(0,email.indexOf('@'))
Ответ 1 Регулярное выражение с совпадением с проверками безопасности var str="[email protected]"; var nameMatch = str.match(/^([^@]*)@/); var name = nameMatch ? nameMatch[1] : null; написанный как одна строка var name = str.match(/^([^@]*)@/)[1]; Регулярное выражение с заменой с проверками безопасности var str="[email protected]"; var nameReplace = str.replace(/@.*$/,""); var name = nameReplace!==str ? nameReplace : null; написанный как одна строка var name = str.replace(/@.*$/,""); Сплит-строка с проверками безопасности var str="[email protected]"; var nameParts = str.split("@"); var name = nameParts.length==2 ? nameParts[0] : null; написанный как одна строка var name = str.split("@")[0]; Тесты производительности каждого примера Тесты JSPerf
Ответ 3 Имя пользователя: "[email protected]".replace(/^(.+)@(.+)$/g,'$1') сервер: "[email protected]".replace(/^(.+)@(.+)$/g,'$2')
Ответ 4 string.split (разделитель, лимит) - это метод, который вы хотите "[email protected]".split("@")[0]