我正在尝试匹配<和>之间的任何内容,但似乎没有任何作用。
我当前的代码是:
var regex = /\<(.*?)\>/
var targeting = $('#auto-expand').val //A text area
function validateText(field)
{
if (regex.test(field) == true)
{
alert(field.match(regex))
}
else
{
alert("fail")
}
}
它一直返回失败,不确定原因。 任何帮助都将如此巨大! :)
答案 0 :(得分:3)
从您的问题中尚不清楚如何调用validateText
函数。但是似乎正在尝试在函数外部设置targeting
,这意味着您可能要在框中输入文本之前进行设置。
下面,我将val
更改为val()
来调用该函数,并在函数运行之前而不是之前查询该值。正则表达式本身可以正常工作(keeping this in mind)
var regex = /<(.*?)>/
function validateText() {
var targeting = $('#auto-expand').val() //A text area
if (regex.test(targeting) == true) {
alert(targeting.match(regex))
} else {
alert("fail")
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<textarea id="auto-expand"></textarea>
<button onclick=validateText()>Test</button>