2
$str1='<option value="AAA">AAA</option><option value="BBB">BBB</option><option value="CCC">CCC</option>';

$str2='<option value="CCC">CCC</option><option value="DDD">DDD</option>';

我想要的预期结果如下。如果其中的某些部分$str2与 的部分重复$str1,则删除 $str2 的重复部分。

预期结果:

$expectedStr = '<option value="DDD">DDD</option>';

谁能帮我?

4

1 回答 1

2
var str1='<option value="AAA">AAA</option><option value="BBB">BBB</option><option value="CCC">CCC</option>',
    str2='<option value="CCC">CCC</option><option value="DDD">DDD</option>',

    result = str2.replace(/<option .+?<\/option>/g, function(m) {
        return (str1.indexOf(m) > -1)? "" : m;
    });

console.log(result); //returns <option value="DDD">DDD</option>

(在这里我假设您要检查“原子”子字符串<option>...</option>

小提琴示例:http: //jsfiddle.net/jAyAE/

于 2012-05-23T09:56:53.467 回答