Javascript 使用正则表达式在表达式中标识[]
如何让这个字符串给出精确的匹配结果 会话[用户名或电子邮件] 表情Javascript 使用正则表达式在表达式中标识[],javascript,regex,Javascript,Regex,如何让这个字符串给出精确的匹配结果 会话[用户名或电子邮件] 表情 <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|wpNam
<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>
var str=“会话[用户名或电子邮件]”;
var patt1=/ID | un | name | login | u username | userid | username | user | Email | uname | usr | log | Email | mail | nick | CUST | account wpname | wpname 1 | textbox pw | session;
记录(str.match(patt1));
现在的结果是username
谢谢。
请注意,逃逸\ [我也把想要的字符串移到开头,因为它也包含用户名——这可能是也可能不是你所需要的,但是你应该考虑它。
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));
只需使用
\[
对[
进行转义,这样它就不会被视为一个特殊的正则表达式控制字符,而只是一个要搜索的普通字符
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));
您可以在此处看到它的工作原理:
实际上,您不必转义
]
,因为当[
出现在它前面时,它只是一个预期的正则表达式控制字符,尽管转义它也没有坏处。太棒了……您是Timesavor的朋友:D