我在javascript中遇到正则表达式问题,所以我请求您的帮助。
因此,我得到了一个存储在var(本例中为regexp)中的ajax查询结果,并且我只想匹配fieldset标记的内容。
这是我的HTML的一部分:
<fieldset class="form-wrapper" >
<form action="/users/login" id="UserLoginForm" method="post" accept-charset="utf-8"><div style="display:none;">
<input type="hidden" name="_method" value="POST" /></div>
<div class="input text required">
<label for="UserUsername">Username</label>
<input name="data[User][username]" type="text" maxlength="255" id="UserUsername" />
</div>
<div class="input password">
<label for="UserPassword">Password</label>
<input type="password" name="data[User][password]" id="UserPassword" />
</div>
<div class="submit">
<input type="submit" value="Login" />
</div>
</form>
<p id="user-management-links">
<a href="/users/forgotten_password">Forgotten password ?</a>
| <a href="/users/register">Sign up</a>
</p>
</fieldset>
这是我的正则表达式:
这件作品:var regexp = content.match(/<form .*?>(.*?)</form>/)[0];
这不是:var regexed = content.match(/<fieldset>(.*)</fieldset>/)[0];
谢谢你的回答!
var regexed = content.match(/<fieldset .*?>(.*)</fieldset>/)[0];
你忘了。*?我想从第一个开始。
EDIT:如果javascript可以选择让点匹配空格和新行,那就可以了(这可能不适合你的原因)
我想出了这个:
<fieldset .*? >(.|W)*</fieldset>
在没有启用任何选项的情况下工作