You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
regexp =/pattern/gmi; // ফ্ল্যাগ সহ g,m and i (এগুলো সম্পর্কে সামনেই জানতে পারব)
24
24
```
25
25
26
-
স্ল্যাস `pattern:/.../` ব্যবহারের মাধ্যমে জাভাস্ক্রীপ্ট ইঞ্জিন বুঝতে পারে এটি একটি রেগুলার এক্সপ্রেশন। যেভাবে `""` অথবা `''` দ্বারা স্ট্রীং কে চিনতে পারে।
26
+
স্ল্যাস `pattern:/.../` ব্যবহারের মাধ্যমে জাভাস্ক্রিপ্ট ইঞ্জিন বুঝতে পারে এটি একটি রেগুলার এক্সপ্রেশন। যেভাবে `""` অথবা `''` দ্বারা স্ট্রিং কে চিনতে পারে।
27
27
28
28
উভয়ক্ষেত্রে `regexp` বিল্টইন `RegExp` ক্লাস এর ইনস্ট্যান্স হিসেবে তৈরি হয়।
29
29
30
30
এই দুই সিনট্যাক্সের মূল পার্থক্য হল `/.../` এখানে ডাইনামিক্যালি কোন ভেরিয়েবল (যেমনঃ টেমপ্লেট লিটারেলস স্ট্রিং `${...}`) ব্যবহার করতে পারবেন না। এটি পুরোপুরি স্ট্যাটিক।
31
31
32
-
Slashes are used when we know the regular expression at the code writing time -- and that's the most common situation. While `new RegExp`, is more often used when we need to create a regexp "on the fly" from a dynamically generated string. For instance:
32
+
বেশিরভাগ ক্ষেত্রে কোড লিখার সময় যখন আমরা রেগুলার এক্সপ্রেশনটি জানি তখন স্ল্যাস ব্যবহার করি। আর `new RegExp` ব্যবহার করি যখন আমাদের প্যাটার্ন জেনারেট করতে হয় ডাইনামিক্যালি। উদাহরণস্বরুপঃ
33
33
34
34
```js
35
35
let tag =prompt("আপনি কোন ট্যাগটি খুঁজতে চাচ্ছেন?", "h2");
@@ -59,13 +59,13 @@ let regexp = new RegExp(`<${tag}>`); // এটি /<h2>/ এর মত যদি
59
59
: ফুল ইউনিকোর্ড সাপোর্ট এনাবল করে। ফ্ল্যাগটি সঠিকভাবে সারোগেটজোড় কে প্রসেসিংয়ের সাপোর্ট দেয়। আরো জানতে পারবেন এই অধ্যায়ে <info:regexp-unicode>।
60
60
61
61
`pattern:y`
62
-
: "Sticky" মোডঃ searching at the exact position in the text (বিস্তারিত এই অধ্যায়ে <info:regexp-sticky>)
62
+
: "Sticky" মোডঃ সার্চিং এর সময় টেক্সটে এক্স্যাক্ট পজিশনটি জানা যায় (বিস্তারিত এই অধ্যায়ে <info:regexp-sticky>)
63
63
64
64
```smart header="কালারস"
65
-
From here on the color scheme is:
65
+
এখানে কালার স্কিমটা হলঃ
66
66
67
67
- regexp -- `pattern:red`
68
-
- string (where we search) -- `subject:blue`
68
+
- string (যেখানে আমরা সার্চ করি) -- `subject:blue`
69
69
- result -- `match:green`
70
70
```
71
71
@@ -98,11 +98,11 @@ From here on the color scheme is:
98
98
alert( result.index ); // 0 (প্রাপ্ত মিলের পজিশন)
99
99
alert( result.input ); // We will, we will rock you (source string)
100
100
```
101
-
The array may have other indexes, besides `0`if a part of the regular expression is enclosed inparentheses. We'll cover that in the chapter <info:regexp-groups>.
101
+
`0`এর পাশাপাশি অ্যারের অন্যান্য ইনডেক্সও থাকতে পারে যদি এক্সপ্রেশনটিতে প্রথম বন্ধনী থাকে। আমরা এই অধ্যায়ে এসম্পর্কে বিস্তারিত জানতে পারব <info:regexp-groups>।
102
102
103
103
3. এবং, সর্বশেষে যদি কোন মিল খুঁজে পাওয়া না যায় `null` রিটার্ন করবে (এটি `pattern:g` ফ্ল্যাগের উপর নির্ভর করে না)।
104
104
105
-
একটি গুরুত্বপূর্ন ব্যাপার খেয়াল রাখা উচিত। যদি কোন মিল খুঁজে পাওয়া না গেলে এম্পটি স্ট্রিং এর বদলে `null` রিটার্ন করে। এজন্য এম্পটি চেকিংয়ের জন্য ভুলভাবে চেকিংয়ের জন্য এরর পেতে পারেন, যেমনঃ
105
+
একটি গুরুত্বপূর্ন ব্যাপার খেয়াল রাখা উচিত। কোন মিল খুঁজে পাওয়া না গেলে এম্পটি স্ট্রিং এর বদলে `null` রিটার্ন করে। এজন্য এম্পটি চেকিংয়ের জন্য ভুলভাবে চেকিংয়ের জন্য এরর পেতে পারেন, যেমনঃ
106
106
107
107
```js run
108
108
let matches = "JavaScript".match(/HTML/); // = null
@@ -135,15 +135,17 @@ alert( "We will, we will".replace(/we/i, "I") ); // I will, we will
135
135
// g ফ্ল্যাগ সহ
136
136
alert( "We will, we will".replace(/we/ig, "I") ); // I will, I will
137
137
```
138
+
138
139
দ্বিতীয় আর্গুমেন্টে `replacement` স্ট্রিংটি পাস করা হয়। মিল খুঁজে পাওয়া অংশগুলো `replacement` এর সাথে ব্যবহার করতে আমরা কিছু স্পেশাল ক্যারেক্টার সংযুক্ত করতে পারি।
মেথডগুলো সম্পর্কে বিস্তারিত আমরা এই অধ্যায়ে জানব <info:regexp-methods>.
168
170
169
-
170
171
## সারাংশ
171
172
172
173
- রেগুলার এক্সপ্রেশন গঠিত হয় প্যাটার্ন এবং অপশনাল ফ্ল্যাগের সমন্বয়েঃ `pattern:g`, `pattern:i`, `pattern:m`, `pattern:u`, `pattern:s`, `pattern:y`।
173
-
-Without flags and special symbols (that we'll study later), the search by a regexp is the same as a substring search.
174
+
-ফ্ল্যাগ এবং স্পেশাল সিম্বল ছাড়া (পরবর্তীতে জানব) regexp এর সার্চ substring সার্চ এর মত কাজ করে.
174
175
-`str.match(regexp)` মেথডটি `pattern:g` ফ্ল্যাগের জন্য প্যাটার্নের সাথে সকল মিল খুঁজে, অন্যথায় শুধু প্রথম মিলটি খুঁজে।
175
176
-`str.replace(regexp, replacement)` মেথডটি `regexp` দ্বারা প্রাপ্ত সব মিলকে `replacement` করে `pattern:g` ফ্ল্যাগের জন্য, অন্যথায় শুধু প্রথম মিলটিকে রিপ্লেস করে।
176
177
-`regexp.test(str)` মেথডটি অন্তত একটি মিল খুঁজে পেলে `true` রিটার্ন করে, অন্যথায় `false` রিটার্ন করে।
0 commit comments