capture groups
. يتم استخدام الأقواس ، (
و )
، للعثور على أجزاء فرعية متكررة. يمكنك وضع تعبير النمط الذي سيتكرر بين الأقواس. لتحديد مكان ظهور سلسلة التكرار ، استخدم خط مائل عكسي ( \
) ثم رقمًا. يبدأ هذا الرقم من 1 ويزيد مع كل مجموعة التقاط إضافية تستخدمها. على سبيل المثال سيكون \1
لمطابقة المجموعة الأولى. يتطابق المثال أدناه مع أي كلمة تحدث مرتين مفصولة بمسافة: let repeatStr = "regex regex"؛باستخدام أسلوب
اترك repeatRegex = / (\ w +) \ s \ 1 /؛
repeatRegex.test (repeatStr)؛ // يعود صحيح
repeatStr.match (repeatRegex)؛ // Returns ["regex regex"، "regex"]
.match()
على سلسلة سيعود مصفوفة مع السلسلة يطابق ، جنبا إلى جنب مع مجموعة الالتقاط الخاصة به. capture groups
في reRegex
لمطابقة الأرقام التي يتم تكرارها ثلاث مرات فقط في سلسلة ، كل منها مفصولة بمسافة. "42 42 42"
.
testString: 'assert(reRegex.test("42 42 42"), "Your regex should match "42 42 42"
.");'
- text: يجب أن يتطابق تعبيرك العادي مع "100 100 100"
.
testString: 'assert(reRegex.test("100 100 100"), "Your regex should match "100 100 100"
.");'
- text: يجب ألا يتطابق تعبيرك العادي مع "42 42 42 42"
.
testString: 'assert.equal(("42 42 42 42").match(reRegex.source), null, "Your regex should not match "42 42 42 42"
.");'
- text: يجب ألا يتطابق تعبيرك العادي مع "42 42"
.
testString: 'assert.equal(("42 42").match(reRegex.source), null, "Your regex should not match "42 42"
.");'
- text: يجب ألا يتطابق تعبيرك العادي مع "101 102 103"
.
testString: 'assert(!reRegex.test("101 102 103"), "Your regex should not match "101 102 103"
.");'
- text: يجب ألا يتطابق تعبيرك العادي مع "1 2 3"
.
testString: 'assert(!reRegex.test("1 2 3"), "Your regex should not match "1 2 3"
.");'
- text: يجب أن يتطابق تعبيرك العادي مع "10 10 10"
.
testString: 'assert(reRegex.test("10 10 10"), "Your regex should match "10 10 10"
.");'
```