如何比较jquery中的类似字符串?
<script src="../../js/jq.js"></script>
<script>
$(function(){
var str1 = $.trim($('#str1').val().toUpperCase());
var str2 = $.trim($('#str2').val().toUpperCase());
if(str1==str2){
console.log('yep');
}
});
</script>
<input type="text" id="str1" value="One String"/>
<input type="text" id="str2" value="One String1"/>
如果我只是检查两个值是否相等,那么比较“One String”和“One String1”是行不通的。有没有办法在jquery中这样做?例如,我只想比较90%的字符串。
答案 0 :(得分:4)
你可以看到一个是否包含在另一个中,例如:
if (str1.indexOf(str2) >= 0 || str2.indexOf(str1) >= 0)
console.log('yep');
}
答案 1 :(得分:4)
检查出来:http://jsfiddle.net/Sj5dE/您可以注释掉a,b块以查看字符串的相似性。它当然区分大小写。我希望这有帮助。由于您的示例讨论了比较两个相似的字符串,我认为字符串的开头很可能是相同的,因此我没有引入任何子字符串逻辑,但可以随意更改函数。
答案 2 :(得分:2)
试试这可能有效
<script src="../../js/jq.js"></script> <script>
$(function(){
var str1 = $.trim($('#str1').val().toUpperCase());
var str2 = $.trim($('#str2').val().toUpperCase());
if(str1===str2){ console.log('yep'); } });
</script>
<input type="text" id="str1" value="One String"/>
<input type="text" id="str2" value="One String1"/>
答案 3 :(得分:1)
在 javascript 中,您可以使用substring获取您想要比较的字符串的90%。
$(function(){
var str1 = $.trim($('#str1').val().toUpperCase().substring(0, 10);
var str2 = $.trim($('#str2').val().toUpperCase().substring(0, 10);
if(str1==str2){
console.log('yep');
}
答案 4 :(得分:1)
看看
http://code.google.com/p/google-diff-match-patch/
中的演示http://neil.fraser.name/software/diff_match_patch/svn/trunk/demos/demo_diff.html
答案 5 :(得分:0)
您可以通过以下方式检查字符串是否存在
$(“。className”)。replace(/(^ | \ s)yourTextHere \ S + / g,“”);