ifc-expressions
Version:
Parsing and evaluation of IFC expressions
17 lines (16 loc) • 715 B
JavaScript
import { FuncArgRegex } from "./FuncArgRegex.js";
import { StringValue } from "../../../value/StringValue.js";
import { ExprEvalSuccessObj } from "../../ExprEvalResult.js";
export class FuncArgSimpleRegex extends FuncArgRegex {
constructor(required, name, defaultValue) {
super(required, name, defaultValue);
}
toRegexString(patternString) {
const pattern = patternString.getValue();
const transformedPattern = pattern
.replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&") // escape all js REGEX special chars
.replaceAll(/\\\*/g, ".*");
return new ExprEvalSuccessObj(StringValue.of(transformedPattern));
}
}
//# sourceMappingURL=FuncArgSimpleRegex.js.map