2626#include < orea/engine/sensitivityaggregator.hpp>
2727#include < ql/math/matrixutilities/pseudosqrt.hpp>
2828#include < ql/math/matrixutilities/symmetricschurdecomposition.hpp>
29- #include < boost/regex.hpp>
29+
30+ #include < regex>
3031
3132using namespace QuantLib ;
3233using namespace ore ::data;
@@ -182,10 +183,10 @@ void MarketRiskReport::initialiseRiskGroups() {
182183
183184 // build portfolio filter, if given
184185 bool hasFilter = false ;
185- boost ::regex filter;
186+ std ::regex filter;
186187 if (portfolioFilter_ != " " ) {
187188 hasFilter = true ;
188- filter = boost ::regex (portfolioFilter_);
189+ filter = std ::regex (portfolioFilter_);
189190 LOG (" Portfolio filter: " << portfolioFilter_);
190191 }
191192
@@ -196,7 +197,7 @@ void MarketRiskReport::initialiseRiskGroups() {
196197
197198 QL_REQUIRE (portfolio_, " No portfolio given" );
198199 for (const auto & pId : portfolio_->portfolioIds ()) {
199- if (breakdown_ && (!hasFilter || boost ::regex_match (pId, filter))) {
200+ if (breakdown_ && (!hasFilter || std ::regex_match (pId, filter))) {
200201 auto tradeGroupP = QuantLib::ext::make_shared<TradeGroup>(pId);
201202 tradeGroups_->add (tradeGroupP);
202203 }
@@ -207,7 +208,7 @@ void MarketRiskReport::initialiseRiskGroups() {
207208 tradeIdGroups_[allStr].insert (make_pair (tradeId, pos));
208209 else {
209210 for (auto const & pId : trade->portfolioIds ()) {
210- if (!hasFilter || boost ::regex_match (pId, filter)) {
211+ if (!hasFilter || std ::regex_match (pId, filter)) {
211212 tradeIdGroups_[allStr].insert (make_pair (tradeId, pos));
212213 if (breakdown_)
213214 tradeIdGroups_[pId].insert (make_pair (tradeId, pos));
0 commit comments