정규 exec 신기!
하나의 요 구 는 다음 과 같다. 즉, 큰 입력 상자 에 문안 을 쓴 다음 에 아래 의 작은 입력 상자 에 일치 하 는 문안 을 쓰 고 일치 하 는 문안 을 빨간색 으로 표시 하 는 것 이다.
여기 서 관건 은 어떻게 일치 하고 성공 적 으로 연결 하 느 냐 하 는 것 이다.
여기 서 100 자 를 생략 하고 핵심 코드 를 입력 하 십시오. (FYI, vue 프레임 워 크 에서 처리 함)
data () {
return {
processIdx: 0, //
reg: "", //
r: "", //
res: [], //
sample: "", // ,
}
}
methods: {
initProcess() { // ,
this.processIdx = 0;
this.reg = "";
this.r = "";
this.res = [];
this.sample = "";
},
processText() {
// 「 」「 」「 」: ,
// exec , index lastIndex 。
this.res = this.reg.exec(this.form.sample);
if (!this.res) {
this.r += this.sample.slice(this.processIdx);
this.vHtml4Model = this.r;
} else {
this.r += this.sample.slice(this.processIdx, this.res.index);
let p = this.sample.slice(this.res.index, this.reg.lastIndex);
p = `${p}`;
this.r += p;
this.processIdx = this.reg.lastIndex;
this.processText(); //
}
},
matchReg() { // “ ”
this.initProcess();
if (!this.form.sample) return this.$message(" ");
if (this.regExpression) {
this.showSampleInput = false; // ,
this.showSampleText = true; // ,
this.reg = new RegExp(this.regExpression, "g");
this.sample = this.form.sample.toString();
this.processText();
} else {
this.$message(" ");
}
},
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
RegExp#exec() 가 돌려주는 배열에는 undefined 가 포함되어 있을지도 모른다갑자기 말해도 핀과 오지 않는다고 생각하기 때문에, 이미지를 준비했습니다. groups 는 명명된 캡처를 사용하지 않으면 undefined 그래서 좋다고 해서, result[1] 가 undefined 네요. 다만, ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.