차량 제목에 대한 XML 정보를 읽고 응용 프로그램에 구문 분석하는 응용 프로그램이 있습니다. 내 데이터베이스에서 나는 개인 이름인지 회사 이름인지에 따라 항상 내 이름을 저장합니다 (내 시스템에서 발생할 수 있기 때문에). 문제는 XML 소스에 이름 데이터가 있지만 개인 또는 회사인지 여부를 지정하지 않는다는 것입니다. 내 데이터베이스에 적절하게 저장할 수 있도록 알 필요가 있습니다. 개인의 이름과 일치하는지 확인하기 위해 문자열을 검사 할 수있는 이름이나 정규 표현식 또는 라이브러리 데이터베이스가 있습니까? 감사!문자열이 사람의 이름인지 확인하기위한 정규식 또는 데이터베이스?
답변
당신은 하드 프레스를 찾을 것입니다. 개인의 이름은 종종 상상력에 의해서만 제한됩니다. 그러나 필요한 경우 응용 프로그램이 관심을 갖는 모든 자동차 제조업체의 목록을 수집하고이 목록과 비교하여 XML 이름 데이터를 확인하는 것이 좋습니다. 일치하는 것이 발견되면 분명히 이름은 회사이고 그렇지 않은 경우 이름이 개인이라고 생각할 수 있습니다.
감사합니다. 같은 대답으로 사람들을 묘사 한 이래로, 나는 당신이 먼저 대답 한 이후로 당신을 선택했습니다. 그래서, 당신이이 어려움에 대해 좋은 점을 제기했다고 생각합니다. 나는 정말로 구별 할 필요가 없기 때문에 아마 하나의 필드 만 사용한다고 생각합니다. – Austin
아니요, 알 수있는 방법이 없습니다. Frank Zappa의 아동 인 Moon Unit을 다루고 있습니까, 아니면 진짜 달의 기념비적 인 기록 인 Moon Unit을 다루고 있습니까? 이름은 무엇이든 상관 없으며, 회사 이름은 무엇이든 될 수 있습니다 (소유자 이름 포함). 데이터가 귀하에게 제공되는지 여부를 확실히 알 수있는 유일한 방법입니다.
언제든지 Frank Zappa를 답안에 넣을 수 있습니다. 저에게서 upvote를받습니다. – Adam
내가 일하는 데 사용했던 대형 통신 회사에서이 문제가 발생했습니다. 우리는 2 백만개의 더하기 이름에서 다음 정규 표현식을 테스트했습니다.
([A-Z][a-z][a-z]*) *([A-Z][a-z]*)\.? *([A-Z][a-z][a-z][a-z]*)
우리는 99.8 %의 정확도를 얻었습니다. 데이터는 상당히 깨끗합니다. 이것은 C의 정규 표현 엔진을위한 것이므로 - 구문이 perl에서 약간 벗어날 수 있습니다. 에 괄호가 필요한지 여부는 알 수 없습니다.
어포 스트로피 나 하이픈을 지원하지 않습니다. O'Halloran이나 Jones-Drew 같은 이름의 이름은 어떻게 다루었습니까? –
아포스트로피가 발견되면 여분의 문장을 삽입하고 저장 프로 시저를 사용하여 삽입하면 저장 방법에 상관없이 저장됩니다. 전달하기 전에 입력 내용을 먼저 삭제하고 싶습니다. sproc에 ... – t0mm13b
글쎄, 이름은 분명히 공백으로 나눠진 성 (성)을 가지고 있지만 다른 회사는 Ltd (제한적), PLC (공개 상장 회사) 또는 LLC (미국 규정에 따라 나열된 회사 유형) ... 나는 여기에 구타 대위를 벗어날 것인가? last_name과 first_name이 비어 있으면 회사 필드를 확인하고 그 반대도 마찬가지입니다. 두 필드의 조합을 두 필드의 조합으로 처리하면 어려워집니다.
- 1. cpp 문자열이 유효한 도메인 이름인지 확인하십시오.
- 2. 문자열이 유효한 단어인지 확인하기위한 루비 라이브러리가 있습니까?
- 3. .au 도메인 이름을 확인하기위한 Regexp
- 4. 문자열이 Delphi를 사용하는 유효한 Windows 폴더 이름인지 확인하는 방법은 무엇입니까?
- 5. 문자열이 아닌 정규식
- 6. PCRE 정규식 : 문자열이 포함되지 않음
- 7. 추출 나는이처럼 보이는 문자열이 정규식
- 8. 사람의 키와 일치하는 자바 스크립트 정규식
- 9. 정규식 - PHP Lookaround 나는 이와 같은 문자열이
- 10. "."문자열이 포함 된 PHP 정규식 및 "-"
- 11. 데이터베이스 이름 정규식 제한
- 12. 유효한 Active Directory 계정 이름에 대한 정규식
- 13. API 테스트시 데이터베이스 항목을 확인하기위한 테스트 코드 작성
- 14. 두 번째 또는 세 번째 사람의 의견?
- 15. PHP 가난한 사람의 캐시
- 16. 정규식 자습서 또는 서적
- 17. 일치하는 알고리즘 또는 정규식?
- 18. 정규식 INT 또는
- 19. PHP 정규식 또는 | 운영자
- 20. 데이터베이스 사용자가 스키마를 소유하고 있는지 확인하기위한 일반화 된 쿼리
- 21. 정규식
- 22. 정규식
- 23. 시간이 지남에 따라 변하는 사람의 정보를 유지하는 데이터베이스 설계?
- 24. 무엇이 입력 데이터인지 확인하기위한 논리
- 25. 전자 메일 또는 전화 번호가 제공되었는지 확인하기위한 자바 스크립트
- 26. .NET 정규식 찾기 위해 쿼리 나는이처럼 보이는 거대한 문자열이
- 27. ReferenceProperty를 확인하기위한 원시 GQL은 무엇입니까?
- 28. 자바 String.matches와 정규식 또는 파이프
- 29. 정규식
- 30. 문자열에 하위 문자열이 있는지 확인합니다.
어떤 DB가 당신입니까? 사용 하시겠습니까? 어쨌든 이것은 까다 롭습니다. 우선 당신은 개인의 이름이 어떻게 생겼는지를 결정해야합니다. 회사의 경우도 마찬가지입니다. 일부 회사의 이름이 개별적인 이름처럼 보일 수도 있습니다. –
일반적으로 회사는 사람과 같이 완전한 법인입니다. 재산을 소유하거나 소송을 제기 할 수 있습니다. 어쩌면 당신은 상관하지 않습니다. –