ভিজ্যুয়াল স্টুডিও কোডটি রেজেজের কোন স্বাদ ব্যবহার করে?


130

ভিজ্যুয়াল স্টুডিও কোডে অনুসন্ধান-প্রতিস্থাপনের চেষ্টা করে, আমি দেখতে পাচ্ছি যে এর রেজেক্স গন্ধ পুরো ভিজ্যুয়াল স্টুডিও থেকে পৃথক। বিশেষত, আমি একটি নামী গোষ্ঠী ঘোষণার চেষ্টা করি string (?<p>[\w]+)যা ভিজ্যুয়াল স্টুডিও কোডে নয় তবে ভিজ্যুয়াল স্টুডিওতে কাজ করে। এটি ত্রুটির সাথে অভিযোগ করবে Invalid group

এই নির্দিষ্ট সমস্যাটি সমাধান করা ছাড়াও, আমি ভিজ্যুয়াল স্টুডিও কোডে রেজেক্সেসের স্বাদ এবং এর সম্পর্কে কোথায় ডকুমেন্টেশন সন্ধানের জন্য তথ্য সন্ধান করছি, তাই আমি যে কোনও প্রশ্নে আমার হোঁচট খেতে পারে সেজন্য নিজেকে সাহায্য করতে পারি।

সম্পূর্ণ ভিজ্যুয়াল স্টুডিও এখানে ডকুমেন্টেড হিসাবে । নেট নিয়মিত এক্সপ্রেশন ব্যবহার করে । এই লিঙ্কটি স্ট্যাকওভারফ্লোতে অন্য কোথাও ভিএস কোডের নথি হিসাবে উল্লেখ করা হয়েছে, তবে তা নয়।


ভিএসকোড জাভাস্ক্রিপ্ট-ভিত্তিক রেজেক্স ইঞ্জিন ব্যবহার করছে তবে এটি একই নয়। আপনি সেখানে নামকৃত ক্যাপচারিং গ্রুপগুলি ব্যবহার করতে পারবেন না।
উইক্টর স্ট্রিবিউ

1
ভিএসকোডে ব্যবহৃত রেজেক্সের কোনও নির্দিষ্ট দলিল নেই। তবে আপনার যদি সোর্স কোডটি একবার দেখে থাকে তবে আপনি প্রচুর জেএস কোড দেখতে পাবেন। যদি আপনি লুকবিহিন্ডগুলি ব্যবহার করার চেষ্টা করেন তবে আপনি লুপহেডগুলি কাজ করার সময় অবৈধ প্যাটার্ন ত্রুটি পান। এবং জেএস রেজেক্স গন্ধ একমাত্র রেইজেক্স ইঞ্জিন যা নিদর্শনটিকে [^]কোনও চিহ্নের সাথে মিলে যায় বলে বিবেচনা করে। সুতরাং, এটি পরিষ্কার যে এটি জেএস রেজেক্স ইঞ্জিন।
উইক্টর স্ট্রিবিউউ


1
ঠিক আছে. ভাল যদি আপনি নিশ্চিত হন এবং আপনার ডক্সের কয়েকটি লিঙ্ক রয়েছে তবে আপনি উত্তর দিতে পারেন। আমি upvote করব। যদি একমাত্র এটি হয় তবে ECMAScript বৈশিষ্টটি দুর্দান্ত লিঙ্ক বলে মনে করবেন না।
এরিক

1
সুতরাং, আপনি কি ধরনের উত্তর আশা করেন? আমি উপরে পোস্ট করা সমস্ত কি জেএস রেজেক্সের সিনট্যাক্স বর্ণনার লিঙ্ক? এমডিএন রেফারেন্সের মতো ?
উইক্টর স্ট্রিবিউউ

উত্তর:


170

ফাইল সাইডবারে সন্ধান করুন / প্রতিস্থাপনে মরিচা রেজেক্স

এমএসএফটি-র রব লরেন্স লিখেছেন যে ফাইল অনুসন্ধানে মরিচা রেজেক্স ব্যবহার করা হয়েছে। মরচে ভাষা ডকুমেন্টেশন সিনট্যাক্স বর্ণনা করা হয়েছে।

গিটহাবে রব লরেন্স

ফাইল উইজেটে সন্ধান করুন / প্রতিস্থাপনে জাভাস্ক্রিপ্ট রিজেক্স

এমএসএফটি-র আলেকজান্দ্রু ডিমা লিখেছেন যে ফাইন্ড উইজেটটি জাভাস্ক্রিপ্ট রিজেক্স ব্যবহার করে। উইক্টর যেমন মন্তব্য করেছেন, ECMAScript 5 এর ডকুমেন্টেশন সিনট্যাক্সটি বর্ণনা করে। সুতরাং করে MDN জাভাস্ক্রিপ্ট রেগুলার এক্সপ্রেশন গাইড

গিটহাবের আলেকজান্দ্রু ডিমা

পার্থক্য পরীক্ষা করুন

ফাইল সাইডবারের (?=foobar)সন্ধানগুলি সমর্থন করে না যেখানে ফাইল উইজেটের সন্ধানগুলি লুপহেড সিনট্যাক্সকে সমর্থন করে।

উইজেটে কাজ করা সাইড হেড দেখায় তবে সাইডবারে নয়।

গোষ্ঠীগুলির সাথে সন্ধান / প্রতিস্থাপন সম্পর্কিত

এটি / গ্রুপ, ব্যবহার বন্ধনী সহ প্রতিস্থাপন করতে ()গ্রুপে এবং $1, $2, $3, $nপ্রতিস্থাপন।

এখানে একটি উদাহরণ।

আগে:

এটি প্রতিস্থাপনের আগে পাঠ্য।

পরে:

এটি প্রতিস্থাপনের পরে পাঠ্য।


12

শন এর উত্তরটি এখনও সঠিক, তবে একটি আপডেট যুক্ত করতে, সম্প্রতি ভিএস কোড পার্ল ভিত্তিক পিসিআরই 2 ইঞ্জিনটি ব্যবহার করার বিকল্পটি যুক্ত করেছে । আপনি আপনার সেটিংস কনফিগারেশনের মাধ্যমে এটি সক্ষম করতে পারেন।

এটি আপনাকে লুয়াহেডস এবং ব্যাকরেফারেন্সের মতো আরও উন্নত রেজেক্স অপারেশন সম্পাদন করতে দেয় । তবে নীচে উল্লিখিত হিসাবে , রেজেক্সটি এখনও বৈধ জাভাস্ক্রিপ্ট রিজেেক্স হতে হবে

ভিএস কোড নিয়মিত অভিব্যক্তি অনুসন্ধানগুলিকে সমর্থন করে, তবে, ব্যাকরিফারেন্সগুলি এবং লুকেরাউন্ডটি ডিফল্টরূপে সমর্থিত নয়। তবে আপনি সেটিং অনুসন্ধানের মাধ্যমে এটি সক্ষম করতে পারেন । এটি পিসিআরই 2 রেজেক্স ইঞ্জিন ব্যবহার করতে রিপগ্রিপ কনফিগার করে। পিসিআরই 2 অন্য অনেকগুলি বৈশিষ্ট্য সমর্থন করলেও আমরা কেবল রেইগেক্স এক্সপ্রেশনগুলি সমর্থন করি যা এখনও জাভাস্ক্রিপ্টে বৈধ , কারণ মুক্ত সম্পাদকরা এখনও সম্পাদকের জাভাস্ক্রিপ্ট-ভিত্তিক অনুসন্ধান ব্যবহার করে অনুসন্ধান করা হয়।

এবং একটি বোনাসের জন্য যদি আপনি এখানে বহু লাইন অনুসন্ধানগুলি করার চেষ্টা করে শেষ করেন তবে ভিএস কোড সম্প্রতি সেই বৈশিষ্ট্যটি যুক্ত করেছে !

এখানে চিত্র বর্ণনা লিখুন


PCRE2 সেটিংস মেনুতে সক্রিয় করা যেতে পারে। পছন্দসমূহ ~ সেটিংসে যান এবং '
রিজেক্স'-এর

দেখে মনে হচ্ছে যে সেটিংটি অবমুক্ত করা হয়েছে এবং ডিফল্ট ইঞ্জিন কোনও বৈশিষ্ট্য সমর্থন না করলে PCRE2 স্বয়ংক্রিয়ভাবে ফ্যালব্যাক হিসাবে ব্যবহৃত হয়।
কেভিন রাক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.