문장에서 단어를 일치시키는 5000 개의 항목이 포함 된 해시를 사용하고 있는데 일치하는 경우 예 : if($hash{$word}){Do Something}
가끔 단어에 마침표가 나타나고 마침표가 일치하면 일치하지 않는 결과를 찾습니다. 해시와 일치 할 때 어떤 구두점을 무시하도록 수행 할 수 있습니까?Perl에서 해시로 검색
0
A
답변
4
구두점을 제외하기 위해 찾는 단어를 다시 정의해야합니다 (예 : 대시 및 아포스트로피는 사용하고 작은 따옴표는 사용하지 않을 수도 있음).
조 기술 - 구두점을 인식하지 것은 :
$key = $word;
$key ~= s/\W//g; # Any non-word characters are removed
if (defined $hash{$key}) { DoSomething; }
당신은 당신의 요구를 충족하기 위해 대체 명령을 구체화 할 수 있습니다.
그러나 해시 키가 일치하는지 확인하는 유일한 방법은 해시 된 키가 일치하는지 확인하는 것입니다. 따라서 제공하는 내용과 일치해야합니다.
+0
감사합니다. @Jonathan. –
0
시도 :
당신이 포함 된 견적 문장 부호인지 아닌지 O'Malley``같은 상황을 고려하여 결정해야합니다my $s = $word;
$s =~ s/\W//g;
my $k;
for (keys %hash){
s/\W//g;
if($_ eq $s){
$k = $_;
last;
}
}
if(defined $k){
# Do Something
}
관련 문제
- 1. 해시로 검색 하시겠습니까?
- 2. .Net 해시로 검색 이미징을위한 라이브러리?
- 3. 자식의 속성에 의해 해시로 has_many 연결 검색
- 4. Perl에서 "익명의 해시로 된"홀수 개의 요소가 표시되는 이유는 무엇입니까?
- 5. Regexp Perl에서 변수로 검색 및 바꾸기
- 6. sqlalchemy에서 해시로 결과를 인쇄합니다.
- 7. 해시로 Ruby 배열 재구성
- 8. Ruby에서 XHTML에서 다차원 해시로
- 9. rails는 해시로 조건을 결합합니다.
- 10. 해시로 중복 됨
- 11. 루비에서 암호 해시로 작업하기
- 12. 해시로 csv 읽기
- 13. 해시로 URL 재 작성
- 14. txt 파일을 perl의 해시로 읽어들입니다.
- 15. 배열을 Perl의 해시로 변환하려면 어떻게해야합니까?
- 16. 저장소 C에서 해시로 인증서 찾기 #
- 17. formtastic으로 해시로 배열 양식 생성
- 18. 루비 : 값으로 해시로 항목 찾기
- 19. 텍스트를 phpbb 해시로 변환하는 방법?
- 20. Perl에서 텍스트를 어떻게 링크합니까?
- 21. -G는 Perl에서 무엇을합니까?
- 22. perl에서 인수없이 분할
- 23. perl에서 중첩하기
- 24. Perl에서 두 데이터 세트 매핑하기
- 25. RectangleF를 Picasa 얼굴 해시로 바꾸는 방법
- 26. 해시로 시작하는 모든 목록 요소를 제거하십시오.
- 27. sha256을 해시로 사용하고 사용자 ID로 소금을 넣기
- 28. 조건을 조인 된 테이블의 해시로 사용하기
- 29. 모델의 속성을 해시로 저장할 수 있습니까?
- 30. 구문과 단어를 MD5 해시로 변환하는 방법은 무엇입니까?
. 당신이 좋아하는 규칙들을 생각 해냈다면 입력 단어에 적용하여 해쉬에서 그들을 찾기 전에 구두점이 아닌 모든 것을 제거하십시오. –
@Jim 나는 또한 그 라인들에 대해서 생각하고있다. 그러나 문제는 문장의 구두점을 제거 할 수 없기 때문에 문장 경계 검출을 위해서 마침표가 필요하다는 것이다. –
더 많은 샘플 코드를 제공 할 수 있습니까? 해결책은 단어를 파싱하는 방법에 있거나 해시를 채우는 방법에있을 수 있습니다. – RickF