Cho địa chỉ email sau - [email protected] - làm thế nào tôi có thể trích xuất một người nào đó từ địa chỉ bằng javascript?Làm cách nào để trích xuất tên người dùng từ địa chỉ email bằng javascript?
Cảm ơn bạn.
Cho địa chỉ email sau - [email protected] - làm thế nào tôi có thể trích xuất một người nào đó từ địa chỉ bằng javascript?Làm cách nào để trích xuất tên người dùng từ địa chỉ email bằng javascript?
Cảm ơn bạn.
Regular Expression với trận đấu
với kiểm tra an toàn
var str="[email protected]";
var nameMatch = str.match(/^([^@]*)@/);
var name = nameMatch ? nameMatch[1] : null;
viết như một dòng
var name = str.match(/^([^@]*)@/)[1];
Regular Expression với thay
với kiểm tra an toàn
var str="[email protected]";
var nameReplace = str.replace(/@.*$/,"");
var name = nameReplace!==str ? nameReplace : null;
viết như một dòng
var name = str.replace(/@.*$/,"");
Chia Chuỗi
với kiểm tra an toàn
var str="[email protected]";
var nameParts = str.split("@");
var name = nameParts.length==2 ? nameParts[0] : null;
viết như một dòng
var name = str.split("@")[0];
thử nghiệm hiệu suất của mỗi ví dụ
String.split (tách, giới hạn) là phương pháp mà bạn muốn
"[email protected]".split("@")[0]
username:
"[email protected]".replace(/^(.+)@(.+)$/g,'$1')
server:
"[email protected]".replace(/^(.+)@(.+)$/g,'$2')
var email = "[email protected]";
var username = email.substring(0,email.indexOf('@'))
Không chắc về ngữ nghĩa javascript, nhưng tôi sẽ sử dụng mô hình này:/. + (? = @)/ – Xarylem
Một cách chức năng: 'str.split (" @ "). Giảm (user => người dùng) ' – schabluk
@epascarello - Tại sao bạn không (hoặc bất kỳ ai khác ở đây) sử dụng một' str.substring đơn giản (0, str.indexOf ("@")) '? Vì bạn có danh tiếng gấp 65 lần như tôi, tôi chắc chắn rằng tôi đang thiếu một cái gì đó, chỉ cần không biết những gì .. – myfunkyside