2011-07-27 8 views
0

SQL Server BIDS (Business Intelligence Development Studio, VS2008)를 사용하여 보고서를 작성하고 필드 값에서 구두점을 제거해야한다는 요구 사항이 있습니다.SQL Server BIDS에서 Regex 사용

예를 들어 필드 값이 "Hello, World!"인 경우 보고서에 값을 "Hello World"로 표시하려고합니다.

=Replace(Replace(Fields!Description.Value,",",""),"!","") 

하지만 난 그냥 이상을 제거해야 할 경우이 신속하게 '못생긴'가된다 ","와! ""나는 중첩이 예에서는 그것을 바꾸기 기능을 사용하기 쉬운 충분히있을 거라고 알고 있어요 문자. 그래서, 짧게 :

SQL Server BIDS 보고서에서 필드 값의 형식을 지정하기 위해 정규식을 사용할 수 있습니까?

대답이 "아니오"이면 괜찮습니다. 찾으려고하면 시간을 낭비하지 않을 것입니다. 감사. (이 전화 번호는 비록) 식 식 정규식

UPDATE

용도 :

=System.Text.RegularExpressions.Regex.Replace(Fields!Phone.Value, "(\d{3})[ -.]*(\d{3})[ -.]*(\d{4})", "($1) $2-$3") 

답변

1

는 다소 시간이 걸릴 수 클라이언트 측에서 행 대형 세트를 처리한다. 그래서 나는 서버 측에서 Regex 로직을 움직일 것을 제안한다.

여기에 CLR 기능을 사용할 수 있습니다. 여기 예제

봐 : http://msdn.microsoft.com/en-us/library/ms157328(v=SQL.100).aspx

+0

이 비록 : 당신은 클라이언트 측에서 처리하려는 경우 표현식을 사용하여 살펴 보자

http://www.simple-talk.com/sql/t-sql-programming/clr-assembly-regex-functions-for-sql-server-by-example/

업데이트 보고서 (정규식 포함) 좋은 제안처럼 들리지만,이 경우에는 제공된 데이터를 변경하기 위해 서버에 대한 충분한 액세스 권한이 없습니다. FetchXML 문을 사용하여 데이터를 검색 할 때 모든 처리가 보고서 (클라이언트 측)에서 발생해야합니다. – Alec

+0

그게 바로 내가 한 일이야! 많은 감사합니다. – Alec

관련 문제