这就是我试图从外观中提取的内容:http://pastebin.com/VD0K3ZcN
lines:match([[title="(value here)">]])
我怎样才能获得“价值”?它没有数字或“>”里面的符号,只有字母,空格,' - 和。
我试过了
lines:match([[title="(.+)">]])
但它只是在捕获后得到整条线。
答案 0 :(得分:5)
您的模式存在问题:
title=" -- This is fine, but you probably want to find out what tag title is in.
(.+) -- Problem: Greedy match. I'll illustrate this later.
"> -- Will match a closing tag with a double quote.
现在,如果我有这个HTML:
<html>
<head title="Foobar">
</head>
<body onload="somejs();">
</body>
</html>
您的模式将匹配:
Foobar"></head><body onload="somejs();
您可以使用(.-)
解决此问题。这是非贪婪的版本,它将匹配尽可能少的数量,一旦找到下一个">
而不是最后一个">
就会停止。