我尝试编写在<ul class=\"theatre\">
和</ul>
我写了那个正则表达式:
<ul class=\"theatre\">(\s)*[<>/ =":\._,)(a-zA-Z0-9(\s)ĄĘŚĆŻŹŁÓĆŃąęśćżźłóćń\-]+</ul>
我的问题是,如何修改此正则表达式以通过第一次遇到</ul>
标记来结束结果?这是我的例子:
应该在<div class=
我知道正则表达式不应该用于HTML(我之前已经读过SO)。我只需要这样做,就能理解为什么它没有在</ul>
上结束,以及我如何解决它。
答案 0 :(得分:1)
你必须使用懒惰?修饰符并使用dot-all标志来匹配行尾的点(匹配任何字符)。不应设置“全局”(多重匹配)标志
选中此正则表达式,仅选中web regexp test中的全部点复选框:
<ul\s.*?</ul>
答案 1 :(得分:0)
尝试:
<ul.*?>(.*?)</ul>
答案 2 :(得分:0)
您可以使用
<ul class="theatre">([\s\S]+?)<\/ul>
例如,在Javascript中,您可以执行
var str = '<ul class="theatre"> bananas </ul>',
m = str.match( /<ul class="theatre">([\s\S]+?)<\/ul>/ );
if ( m ) {
console.log( m[1] ); // " bananas "
}