为搜索表中的"Home page"和"Homepage"给出相同的结果



这是一个搜索表,工作非常完美。但我想在写作中做到这一点;主页";像这样;主页";像这样。在这两种情况下,它都显示主页的结果。类似于";关于我们"one_answers"联系我们";。

代码如下所示。有人能帮我吗

#myInput {

padding: 12px 20px 12px 40px;
border: 5px solid #ddd;
margin-bottom: 12px;
border-radius:20px;
}
<input type="text" id="myInput" onkeyup="myFunction()" placeholder="Search for names.." title="Search your product here">
<table id="myTable" align="center" border="5" width>
<tr class="header">
<th>Header 1 </th>
<th>Header 2</th>
</tr>
<tr>
<td><center>
<br><b>Home page</b></a></center></td>
<td>   </td>
</tr>
<tr>
<td><center>

<br><b>About us</b></a></center></td>
<td>

</td>
</tr>
<tr>
<td><center>

<br><b>Contact us</b></a></center></td>
<td>

</td>
</tr>
</table>
function myFunction() {
var input, filter, table, tr, td, i, txtValue;
input = document.getElementById("myInput");
filter = input.value.toUpperCase();
table = document.getElementById("myTable");
tr = table.getElementsByTagName("tr");
for (i = 0; i < tr.length; i++) {
td = tr[i].getElementsByTagName("td")[0];
if (td) {
txtValue = td.textContent || td.innerText;
if (txtValue.toUpperCase().indexOf(filter) > -1) {
tr[i].style.display = "";
} else {
tr[i].style.display = "none";
}
}       
}
}

使用Regex替换空白

filter = filter.replace(/s/g, '')

编辑以征求意见

filter = filter.replace(/s/g,'')
txtValue = txtValue.replace(/s/g, '')
if (txtValue.toUpperCase().indexOf(filter) > -1) {
tr[i].style.display = "";    
} else {
tr[i].style.display = "none";
}

使用正则表达式模式删除所有空间

let str = "Hello World !";
let spacesRemoved = str.replace(/ /g, "");
console.log(spacesRemoved);

最新更新