下面的代码是从乔恩Resig的书Secrets of JavaScript Ninja这个正则表达式( /?)是什么意思?
var html = "<div class='test'><b>Hello</b> <i>world!</i></div>";
var results = html.match(/<(\/?)(\w+)([^>]*?)>/);
占用了我想知道,第一时间捕捉的意义(括号内),即(\/?)
。
下面的代码是从乔恩Resig的书Secrets of JavaScript Ninja这个正则表达式( /?)是什么意思?
var html = "<div class='test'><b>Hello</b> <i>world!</i></div>";
var results = html.match(/<(\/?)(\w+)([^>]*?)>/);
占用了我想知道,第一时间捕捉的意义(括号内),即(\/?)
。
它匹配一个可选的斜杠。斜杠需要被转义,因为斜杠也可以作为JavaScript正则表达式中的分隔符。
将它包含在括号中并不是很有用。 \/?
也会起作用(除非您稍后想要检查您是否匹配了开始标签或结束标签)。
它要么是就是一个/
什么也没有。 /
必须在正则表达式内部转义,因为它意味着“正则表达式的结束”。
为什么downvote?这个答案是正确的。 –
@TimPietzcker是的,答案是正确的。我刚刚进行了编辑,使其更加清晰,并且正确无误。 – Geek