我有一个包含一些文本的变量,一些html,基本上可以是一个字符串.我需要在变量中搜索特定字符串,以便在包含该变量时以不同方式处理该变量.这是我要做的事情的片段,显然不起作用:)
$.each(data.results,
function(i, results) {
var text = this.text
var pattern = new RegExp("^[SEARCHTERM]$");
if(pattern.test( text ) )
alert(text); //was hoping this would alert the SEARCHTERM if found...
Run Code Online (Sandbox Code Playgroud)
use*_*716 13
您可以使用它.indexOf()
来执行搜索.
如果找不到该字符串,则返回-1
.如果找到它,它将返回它所在的第一个从零开始的索引.
var text = this.text;
var term = "SEARCHTERM";
if( text.indexOf( term ) != -1 )
alert(term);
Run Code Online (Sandbox Code Playgroud)
如果您希望完全匹配,您可以使用^
并且$
似乎暗示,您可以进行===
比较.
var text = this.text;
var term = "SEARCHTERM";
if( text === term )
alert(term);
Run Code Online (Sandbox Code Playgroud)
编辑:根据你的评论,你想要一个完全匹配,但===
不工作,indexOf()
而是.如果有一些需要修剪的空白,有时就是这种情况.
尝试使用jQuery的jQuery.trim()
方法修剪空白.
var text = $.trim( this.text );
var term = "SEARCHTERM";
if( text === term )
alert(term);
Run Code Online (Sandbox Code Playgroud)
如果这不起作用,我建议登录this.text
控制台以查看它是否是您期望的值.