通常のマッチングに関する奇妙な問題
var content = '@ || @caocl /宝盈|| @caocl TEST';
content = content.replace(/||.*/gmi, '');
var reg = /@[^s|@]*$/ ;
var str = content.match(reg);
alert(str);
alert(content);
alert( ' @'.match(reg));
コンテンツ内の || の後のコンテンツを削除してから
と一致しますが、alert(str) は確かに null です。 、alert(content) は '@'、alert('@'.match(reg)) は '@';
このように、str も '@' になるはずですが、マッチング方法についてアドバイスをお願いします。正しい値は次のとおりです なぜ値が間違っているのでしょうか?
-----解決策---------
var content = '@ || @caocl /宝盈|| @caocl TEST';
@ var reg = /@[^|@]*$/ に変更してください。 ; そうじゃないですか