如何获取此字符串以获得完全匹配的结果
会话[username_or_email]
表达式
<html>
<body>
<script type="text/javascript">
var str="session[username_or_email]";
var patt1=/ID|un|name|login_username|userid|username|user|Email|uname|usr|log|email|mail|nick|CUST|account|wpName1|textbox|pw|session[username_or_email]/i;
document.write(str.match(patt1));
</script>
</body>
</html>
结果现在是用户名
三江源。
答案 0 :(得分:1)
请注意转义\ [ - 我也将想要的字符串移动到开头,因为它也包含用户名 - 这可能是您可能需要的,也可能不是,但您应该考虑它。
var str="session[username_or_email]";
var patt1=/session\[username_or_email\]|ID|un|name|login_username|userid|username|user|Email|uname|usr|log|email|mail|nick|CUST|account|wpName1|textbox|pw/i;
document.write(str.match(patt1));
答案 1 :(得分:1)
只需使用[
转义\[
,因此不会将其视为特殊的正则表达式控制字符,而只是要搜索的普通字符。
var str="session[username_or_email]";
var patt1=/ID|un|name|login_username|userid|username|user|Email|uname|usr|log|email|mail|nick|CUST|account|wpName1|textbox|pw|session\[username_or_email]/i;
document.write(str.match(patt1));
您可以在此处查看:http://jsfiddle.net/jfriend00/CuWKV/
你实际上不必逃避]
,因为当[
出现在{{1}}之前它只是一个预期的正则表达式控制字符,虽然它也不会有害于逃避它。