是否有任何方法可以在2个符号之间提取文本?我已被告知使用方法:提取2个符号之间的字符或单词
var email = "[email protected]";
document.write(email.substring(.,@));
使用子似乎只与性格,而不是符号的位置工作。我只是想提取“。”之间的字符。和 “@”
是否有任何方法可以在2个符号之间提取文本?我已被告知使用方法:提取2个符号之间的字符或单词
var email = "[email protected]";
document.write(email.substring(.,@));
使用子似乎只与性格,而不是符号的位置工作。我只是想提取“。”之间的字符。和 “@”
你可以使用RegExp:
var email = "[email protected]";
email.replace(/.+\.(.+)@.+/, '$1'); // surname
或者你可以使用子:
email.substring(email.indexOf('.')+1, email.indexOf('@'))
你的两种方法并不完全等价。考虑输入'first.middle.last @ someplace' – NullUserException
感谢您的快速答案也:) :)两个工作:) – JammyDoger
@JammyDoger仅供参考,'indexOf'解决方案将给''middle.last'首次使用时'。 middle.last @ email.com',而正则表达式解决方案只给出'last'(尽管你可能不想在这里使用'.replace') – NullUserException
当然,你可以使用正则表达式:
var lastname = email.match(/[.]([^.]+)@/)[1]
说明:
[.] # match dot literally
( # open capture group
[^.]+ # match anything other than a dot
) # close capture group
@ # match @ character
谢谢你的快速回答:)但我必须使用子字符串,虽然你的答案工作:) – JammyDoger
使用'indexOf()'。 –