2

文字列がクラスまたはIDであることを確認し、それらを削除して名前を取得するにはどうすればよいですか?例えば、

$string = ".isclass"; 
$string = "#isid";

if($($string).indexOf('.') != -1)) alert($($string).substring(1));
4

3 に答える 3

2

正規表現を使用しないのはなぜですか。クラスなのかIDなのかを心配する必要はありません。

$string.replace(/^(\.|#)/,'') // will replace .class to class - #class to class

http://jsfiddle.net/FcM2Y/

于 2012-12-22T01:34:10.047 に答える
2

何が必要か完全にはわかりませんが、オブジェクトを使用して見つけたものに応じて、事前定義された設定を選択できます。

var $string = ".isclass";

var dict = {
    '.' : 'class',
    '#' : 'id'

}, out;
if ($string[0] in dict) out = dict[$string[0]] + ', ' + $string.slice(1);
else out = 'no match, ' + $string;
console.log(out); // "class, isclass"
于 2012-12-22T01:46:03.790 に答える
2

.文字列がまたは#で始まり、残りを使用するかどうかを知りたい場合は、次のString.match()ように使用できます。

if (matches = $string.match(/^([.#])(.+)/)) {
    // matches[1] will contain either . or #
    alert(matches[2]);
} else {
    // it's something else
}
于 2012-12-22T02:24:18.457 に答える