은 다음과 같습니다regexp를 사용하여 미리 정의 된 입력의 첫 번째 발생을 캡처하는 방법은 무엇입니까? 내가 regexp.my의 정규 표현식을 배우고
/^([0-5][0-9]|60):/g
내 샘플 데이터는 다음과 같습니다 60:40:60 Lua
모든 것이 괜찮습니다. 이제 나는 전에 첫 번째 사건을 추출하고 싶다 :. 예 : 60 달러이지만 1 달러를 사용하려고합니다. 그것은 6040
을 반환합니다. 어떤 생각?
은 다음과 같습니다regexp를 사용하여 미리 정의 된 입력의 첫 번째 발생을 캡처하는 방법은 무엇입니까? 내가 regexp.my의 정규 표현식을 배우고
/^([0-5][0-9]|60):/g
내 샘플 데이터는 다음과 같습니다 60:40:60 Lua
모든 것이 괜찮습니다. 이제 나는 전에 첫 번째 사건을 추출하고 싶다 :. 예 : 60 달러이지만 1 달러를 사용하려고합니다. 그것은 6040
을 반환합니다. 어떤 생각?
무엇 하나 그것에 대해 :
또는 유효성 검사 당신의 방법에
^(?:[0-5][0-9]|60)(?=:)
, 당신은 그것을 시도 할 수 있습니다 :
^(?:[0-5][0-9]|60)(?=:\d{2}:\d{2}.*)
설명 :
(?=:\d{2}:\d{2}.*)
- 이전 패턴에 2 자리 콜론 2 digt가오고 그 뒤에 0 이상의 길이의 문자열이 오도록하십시오.
const regex = /^([0-5][0-9]|60):([0-5][0-9]|60):([0-5][0-9]|60).*$/gm;
const str = `60:40:60 Lua`;
let m;
if ((m = regex.exec(str)) !== null) {
console.log(m[1]);
console.log(m[2]);
console.log(m[3]);
}
제공하는 당신의 필요에 따라되지 않는 자리 그룹 1 시작은 당신이 원하는 3 개 그룹을 캡처하는 해결책이
$ 1을 (를) 사용하여 코드를 공유 할 수 있습니까? [당신에게 정규식 테스트] (https://regex101.com/r/TzYlgu/1), 첫 번째 그룹은 60을 포함합니다. –
코드를 테스트하려고합니다 : https://regexr.com/ –
테스트 중입니까? 이런] (https://regexr.com/3iku4)? –