リンクされた質問をたくさん読みましたが、必要なものが見つかりません。ここに私の問題があります:
inputStr = "<a b c> <c f a> <h a d>";
そして、それぞれの最初の要素だけを取得したい<...>
OutputStr = "a c h";
私は何かを試しました
mychar.replace(/<[a-z](.*)>/g, '$1');
しかし、$1
唯一のことは私に与えます<a b c>
誰かアイデアはありますか?
リンクされた質問をたくさん読みましたが、必要なものが見つかりません。ここに私の問題があります:
inputStr = "<a b c> <c f a> <h a d>";
そして、それぞれの最初の要素だけを取得したい<...>
OutputStr = "a c h";
私は何かを試しました
mychar.replace(/<[a-z](.*)>/g, '$1');
しかし、$1
唯一のことは私に与えます<a b c>
誰かアイデアはありますか?
正規表現が間違っています。最初の文字を一致させる必要がありますが、その後に続くすべての文字を一致させる必要はありません。?
そして、現在のケースでは遅延マッチを忘れないでください:
"<a b c> <c f a> <h a d>".replace(/<([a-z]).*?>/g, "$1"); // "a c h"
参照: https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions