ฉันต้องการนิพจน์นี้เพื่อหลีกเลี่ยงการเว้นวรรคติดต่อกัน: [ซ้ำ]

Jan 06 2021

ฉันมีนิพจน์ปกตินี้และฉันต้องการหลีกเลี่ยงช่องว่างของผู้บริหารทั้งหมด:

const regex = new RegExp(/^[a-zA-ZÀ-úñÑ\s]+$/g);

คำตอบ

Barmar Jan 06 2021 at 01:34

ใช้ Lookahead เชิงลบที่จับคู่ 2 ช่องว่างต่อเนื่องกัน

const regex = /(?!.*\s\s)^[a-zA-ZÀ-úñÑ\s]+$/;
console.log(regex.test("abcdef"));
console.log(regex.test("abc def"));
console.log(regex.test("abc  def"));