2
Here은 Expression<Func<MyClass, bool>>
술어를 동적으로 만드는 방법을 설명하는 게시물입니다. 다음은 스 니펫입니다.Expression 클래스를 사용하여 LINQ 표현식을 생성 할 때 regexp로 검색
var param = Expression.Parameter(typeof(string), "p");
var len = Expression.PropertyOrField(param, "SomeText");
var body = Expression.Equal(
len, Expression.Constant("Text"));
var lambda = Expression.Lambda<Func<string, bool>>(
body, param);
등식 대신 문자열에 regexp를 적용하려면 어떻게해야합니까? 가능성이 있습니까? 당신은 정규 표현식을 검사 테스트 메서드를 호출 Expression.Call(Type type, string methodName, Type[] typeArguments, params Expression[] arguments)
을 사용할 수 있습니다
var param = Expression.Parameter(typeof(string), "p");
var len = Expression.PropertyOrField(param, "SomeText");
var body = Expression.Regexp(
len, @"\D+");
var lambda = Expression.Lambda<Func<string, bool>>(
body, param);
감사합니다. 코드 샘플이 있습니까? –
내 편집 된 답변보기 –
이 문자열의 출처는 "IsMatch"입니까? 다음과 같은 구조 VAR 데이터 = 새로운 목록 { 새의 TestClass {이름 = "VALVOLINE", 수량 = 3}, 새의 TestClass {이름 = "캐스트롤", 수량 = 3}, 새의 TestClass {이름이 있다고 가정 –