結果の一致は同じではありませんしかし、私はthis questionJavascriptのワード境界
で提案されたこの答えを見てきました。マッチが文字列の先頭にある場合、文字列が返されますが、空白の後でマッチすると、空白もマッチの一部として返されます。キャプチャされていないコロンが使用されています。私は次のコードでテスト
は、Firefoxのコンソールです:
let str1 = "un ejemplo";
let str2 = "ejemplo uno";
let reg = /(?:^|\s)un/gi;
console.log(str1.match(reg)); // ["un"]
console.log(str2.match(reg)); // [" un"]
空白が返されているのはなぜ?
非キャプチャは非マッチングを意味するものではありません。 '(?:\ s)'は、 '\ s'はグループと一致するが、グループの一部ではないことを意味します。 – Gurman
両方の出力を同じにする方法はありますか? –
この場合、 '\ bun'だけを使ってみませんか? https://regex101.com/r/Y1BDzy/29 – Gurman