0
소스 텍스트로 remmember 모든 세포는 다음과 같습니다분할 테이블 행 및 정규 표현식
gi0/1 1G-Fiber -- -- -- -- Down -- -- Access
gi0/2 1G-Fiber -- -- -- -- Down -- --
gi0/3 1G-Fiber -- -- -- -- Down -- --
gi0/4 1G-Fiber -- -- -- -- Down -- --
gi0/5 1G-Fiber -- -- -- -- Down -- --
gi0/0/1 1G-Fiber -- -- -- -- Down -- -- Access
gi0/0/2 1G-Fiber -- -- -- -- Down -- --
gi0/0/3 1G-Fiber -- -- -- -- Down -- --
gi0/0/4 1G-Fiber -- -- -- -- Down -- --
gi0/0/5 1G-Fiber -- -- -- -- Down -- --
내 작업 코드는 다음과 같습니다
var re = /(([\w]{2})[\/\d]{1,})\s+([\w\-\.\s]+){1,}[\r\n]/ig;
while ((MyArray = re.exec(text)) != null){
// 여기에 내가 후속 값으로 배열을 취득합니다 (경우 MyArray)
[0] [matched string]
[1] gi0/1 (gi0/0/1)
[2] gi
[3] 1G-Fiber
[4] --
[5] --
[6] --
[7] --
[8] Down
[9] --
[10] --
[11] Access (only for 1st and 6th row)
//하지만 get (MyArray)
[0] [matched string]
[1] gi0/1 (gi0/0/1)
[2] gi
[3] "s" OR "empty"
}
온라인 예 - http://regexr.com?31ilv이
이 사람이 나를 도울 수 있습니까?
공간에서 각 줄을 분할하지 않는 이유는 무엇입니까? 'MyArray = line.split ("") – gilly3
regeexp를 사용하여 반복 시퀀스를 어떻게 기억하는지 알고 싶으므로 – alexx
정규식은 http://regexr.com?31ilv의 정규식과 일치하지 않습니다. 이것을 시도하십시오 : http://regexr.com?31in9. 이것은 당신에게 3 개의 그룹으로 전체 경기를 제공합니다. 단일 정규식은 항상 같은 수의 그룹을 생성합니다. – gilly3