낙타의 단어 당 String
을 분할해야하는 경우가 발생했습니다. 나는이 패턴을 사용하여 answer this question 유사한 분할 프로세스를 구현하고 있습니다 :이 테스트 세트가 발생 될 때까지원하는 지역의 단어 분할
split(/(?=[A-Z])/)
다 괜찮 :
- SalaryGrade - 급여 등급을
- ParentChild - 부모 자식
- 유지 보수 - 유지 보수
- 송금 SPD - 송금 SPD
- FBIAgent - 연방 수사 국 (FBI) 요원
- FBIAgentNYDepartment - 연방 수사 국 (FBI) 요원 NY 부서
한 최대 세 작품을 잘하지만 6-4은 각각 "송금 SPD", "FBI 요원", "FBI 요원 NY 부"이어야합니다 .
연속 대문자를 한 단어로 처리하고 마지막 단어를 다음 단어의 시작으로 처리하는 방법으로 영역을 선택하려면 어떻게해야합니까? 나는 정직하게 일렬로 된 Regex를 좋아하지 않으며 모든 희망을 잃어 가고 있습니다. 나는 그 성능에 대해서뿐만 아니라 무차별 루프를 수행 할 계획이다.
편집 :이 사이트에서 문자열을 여기에서 분리하는 것과 관련하여 다른 질문과 달리이 함수를 사용하여 대문자가 아닌 문자와 대문자를 모두 사용하고 싶습니다.
JS가 lookbehind를 지원하지 않거나 '/ (? <= [az]) (? = [AZ]) /'이면 충분했습니다. – Aaron
'str.match (/ [AZ] +? ! [az]) | [AZ] [az] */g)' –
@Aaron 나는 방금 너무 오래 전에 훑어 보았다. 그래서 나는 그것을 반복 할 생각이다. – Gideon