나는 다음이 RegExp
: (?<= )L.*(?!MH$)
.
아이디어는 다음과 같습니다.
(?<= )
4 개의 공백이 일치 앞에 있어야하지만 일치에 포함되지 않습니다.L.*
일치는 L
다음 문자열로 시작 하고 나머지 문자열을 포함 해야합니다 .(?!MH$)
UNLESS MH
가 문자열 끝에 있습니다.이 마지막 조건은 무시됩니다. 로 끝나는 문자열은 MH
여전히 일치합니다. 왜?
const regExpStr = String.raw`(?<= )L.*(?!MH$)`;
const regExp = new RegExp(regExpStr);
const str = '2. L2 B4 RHODA 1 ADDN,SOMECITY,OK,74999 - 81 HILLCREST MH';
const match = str.match(regExp)?.[0];
console.log(match);
이 정규식을 마지막에 추가 부정적 lookbehind와 함께 사용할 수 있습니다.
(?<= {4})L.*$(?<!MH)
RegEx 세부 정보 :
(?<= {4})
: 현재 위치 앞에 공백이 4 개있는 경우이 일치를 허용합니다.L.*$
: L
끝까지 시작하는 문자열 일치(?<!MH)
: MH
현재 포지션 (종료) 이전에 경기 실패이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다