使用惰性匹配查找字符
在正则表达式中,贪心匹配会找到符合正则表达式模式的字符串中最长的可能部分,并将其作为匹配项返回。另一种方法称为惰性匹配,它找到满足正则表达式模式的字符串的最小可能部分。
您可以将正则表达式 /t[a-z]*i/ 应用于字符串“titanic”。这个正则表达式基本上是一个以 t 开头,以 i 结尾,中间有一些字母的模式。
正则表达式默认是贪婪的,所以匹配会返回 ["titani"]。它找到可能适合该模式的最大子字符串。
但是,您可以使用 ?字符将其更改为惰性匹配。与调整后的 /t[a-z]*?i/ 正则表达式匹配的 "titanic" 返回 ["ti"]。
注意:应该避免使用正则表达式解析 HTML,但是用正则表达式匹配 HTML 字符串是完全可以的。
问题:修复正则表达式 /<.*>/ 以返回 HTML 标记 <h1> 而不是文本“<h1>Winter iscoming</h1>”。记住通配符。在正则表达式中匹配任何字符。
let text = "<h1>Winter is coming</h1>";
let myRegex = /<.*?>/g; // Change this line
let result = text.match(myRegex);
console.log(result);
Comments
Post a Comment