Javascript에 PHP의 preg_match_all과 동일한 것이 있습니까? 그렇지 않다면 정규 표현식의 모든 일치 항목을 배열로 가져 오는 가장 좋은 방법은 무엇입니까? JS 라이브러리를 사용하면 쉽게 사용할 수 있습니다. 당신은 글로벌 수정과 match
을 사용할 수 있습니다preg_match_all JS 상당?
13
A
답변
18
:
>>> '1 2 3 4'.match(/\d/g);
["1", "2", "3", "4"]
10
존 레식 그것은 자바 스크립트의 콜백 소요 기능을 대체 사용하여 작동
'Search and dont replace를'이라는 자신의 블로그에 큰 기술에 대해 작성했습니다 기능을 사용하고 원래 내용을 변경하지 않고 그대로 유지합니다.
전역 일치를 사용하고 결과 배열을 반복하는 것보다 더 깔끔하지 않을 수 있습니다. 특히 여러 그룹을 캡처하는 경우 특히 그렇습니다.
1
JS에서 PHP의 preg_match_all보다 나은 점은 exec() 함수를 사용하는 것입니다. 이렇게하면 match()를 사용하여 그룹을 캡처 할 수 있습니다.
는 예를 들어, 당신은 변수 MyString의에서 괄호에있는 모든 시간과 수를 캡처 할 :
var myString = "10:30 am (15 left)11:00 am (15 left)11:30 am";
var pattern = /(\d{1,2}:\d{1,2}\s?[ap]m)\s\((\d+)/gi;
var match;
while (match = pattern.exec(myString)){
console.log('Match: "' + match[0] + '" first group: -> "' + match[1] + '" second group -> ' + match[2]);
}
출력은 다음과 같습니다
Match: "10:30 am (15" first group: -> "10:30 am" second group -> 15
Match: "11:00 am (15" first group: -> "11:00 am" second group -> 15
관련 문제
- 1. preg_match_all 문제
- 2. preg_match_all 질문
- 3. 정규식 (preg_match_all)
- 4. PHP는 상당()
- 5. HQL 상당
- 6. DetachedCriteria 상당
- 7. JQuery와 상당
- 8. 휴대용 상당
- 9. 자식의 상당
- 10. 주변 데이터가있는 preg_match_all
- 11. PHP preg_match_all 재연 패턴
- 12. preg_match_all 인쇄 * all * 일치
- 13. preg_replace within preg_match_all 문제
- 14. php preg_match_all 대괄호
- 15. preg_match_all 충돌/도청?
- 16. 으로, preg_match_all 구문 문제
- 17. PHP : preg_match_all() 복귀 문제
- 18. PHP 상당 [] 자바 스크립트
- 19. 루비는 "상당"입니다
- 20. BitXor 10 진수 상당
- 21. SQL 서버 상당()
- 22. Mac 용 UITouch 상당
- 23. 불변 문화의 Java 상당
- 24. 파이썬 BeautifulSoup로 상당 make_links_absolute
- 25. preg_match_all()이 아무것도 반환하지 않습니다!
- 26. preg_match_all 도움말 및 기본값 작성
- 27. 나는 무엇으로, preg_match_all 잘못하고 있는가?
- 28. preg_match_all`u` 플래그는 무엇에 의존합니까?
- 29. 하여 Posix 상당 (LMEM_ZEROINIT, 크기)
- 30. VB.NET의 C 상당 getevn/setenv
그 구문을 이해하지 못했다. – erm3nda
@ erm3nda 내 생각에 **/\ d/g ** 이해가되지 않았다. 여기 [Javascript에서 정규 표현식 만들기] (https://developer.mozilla.org/en/docs/Web/JavaScript/Guide/Regular_Expressions). –