-1

特定のテキストスタイルを含む文字列の背景色を変更しようとしています(javascriptを使用)。たとえば、大文字を含まないすべてのテキストの背景を緑色にし、大文字をすべて含む単語を含む文字列の背景を赤色にします。

条件付きのifステートメントを使用する必要があることはわかっていますが、目的を達成する方法がわかりません。

以下は私のjsフィドルへのリンクです。どんな考えでもいただければ幸いです。ありがとう!

http://jsfiddle.net/gnXCr/

-D

4

1 に答える 1

0

基本的に、文字列を単語ごとに分割し、それらの単語をループしてから、各単語で各文字をループし、文字とletter.toLowerCase()が異なるかどうかを確認して大文字かどうかを確認します。このようなもの:

function hasAllCapsWord(string) {
    var words=string.split(" ");

    for (var i=0;i<words.length;i++) {
        var letters=words[i].split("");
        var wordIsAllCaps=false;

        for (var j=0;j<words.length;j++) {
            if (letters[j] && letters[j]!=letters[j].toLowerCase()) {
                wordIsAllCaps=true;
            }
        }

        if (wordIsAllCaps) return true;
    }

    return false;
}
于 2012-06-06T00:13:35.723 に答える