3

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」の比較は、2 つの値が等しいかどうかのみをチェックする場合には機能しません。jqueryでこれを行う方法はありますか? たとえば、文字列の 90% のみを比較したいとします。

4

6 に答える 6

6

たとえば、一方が他方の中に含まれているかどうかを確認できます。

if (str1.indexOf(str2) >= 0 || str2.indexOf(str1) >= 0)
    console.log('yep');
}
于 2012-02-08T15:10:42.010 に答える
5

これをチェックしてください:http://jsfiddle.net/Sj5dE/ a、bブロックをコメントアウトして、文字列の類似性を確認できます。もちろん、大文字と小文字は区別されます。これがお役に立てば幸いです。あなたの例は2つの類似した文字列の比較について話していたので、文字列の先頭が同じである可能性が高いと思いました。そのため、部分文字列ロジックは導入しませんでしたが、関数を自由に変更してください。

于 2012-02-08T15:40:38.947 に答える
3

これを試してみてくださいそれはうまくいくかもしれません

    <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"/> 
于 2012-02-08T15:10:27.293 に答える
1

javascriptでは、部分文字列を使用して、比較する文字列の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');
    }
于 2012-02-08T15:11:38.837 に答える
1

見てください

http://code.google.com/p/google-diff-match-patch/

のデモ

http://neil.fraser.name/software/diff_match_patch/svn/trunk/demos/demo_diff.html

于 2012-02-08T15:13:31.673 に答える