2010-11-20 2 views
0

좋은 밤을 작성정규식에서 유니 코드와 DB 읽기/

나는 현재 정규식 매칭을 기반으로 C#에서 인간의 언어에 대한 매우 간단한 어휘 analiser 일하고, 나는 현재 정규식을 명시 할의 문제에 직면하고있다

그 대상 언어의 모든 구두점 기호와 일치시킬 수 있으며 모든 종류의 공백과도 일치 할 수있는 또 다른 기호와 일치 할 수 있습니다. Stack Overflow 및 다른 사이트에서 여기를 검색 한 후에 Regexs \p{P}을 구두점으로 사용하고 \p{Z}을 공백으로 사용할 수 있음을 확인했으며 텍스트 파일에서 읽을 때 작동합니다. 문제는 최종 프로그램에서 SQL 데이터베이스에서 레코드를 읽고이 어휘 분석기를 사용하여 레코드를 처리해야하며 DB에 레코드의 인코딩이 무엇인지 알지 못합니다. 이 상황에서 이것이 문제가 될 수 있습니까? 언급 된 Regexes는 인코딩이 무엇이든 입력의 모든 구두점과 공백 문자를 일치시킬 수 있습니까?

대단히 감사합니다.

+0

어떤 데이터베이스를 사용하고 있습니까? – Amirshk

+0

SQL Server 2008. – Miguel

답변

2

.NET Framework는 문자열을 데이터베이스에서 유니 코드로 변환합니다. 데이터베이스 텍스트를 올바르게 변환하는지 여부는 무언가가 데이터베이스 텍스트 인코딩이 무엇인지 알려주 었는지에 따라 다릅니다. 하지만 Regex 문자열은 유니 코드로 표시됩니다.

따라서 데이터베이스 액세스 레이어가 데이터베이스 레코드의 텍스트를 올바르게 변환했다고 가정하면 항상 유니 코드이기 때문에 인코딩에 대해 걱정할 필요가 없습니다.

+0

감사합니다. Mischel. – Miguel

관련 문제