যদি আপনি কোনও স্থান সন্ধান করেন তবে তা " "
(এক স্থান) হবে।
আপনি যদি এক বা একাধিক সন্ধান করেন তবে এটি " *"
(এটি দুটি স্পেস এবং একটি নক্ষত্র) বা " +"
(একটি স্থান এবং একটি প্লাস)।
আপনি যদি সাধারণ ব্যবধানের সন্ধান করছেন তবে ব্যবহার "[ X]"
বা "[ X][ X]*"
বা "[ X]+"
কোথায় X
শারীরিক ট্যাব চরিত্রটি রয়েছে (এবং প্রতিটি সেই উদাহরণগুলির মধ্যে একটি একক স্থান দ্বারা পূর্ববর্তী)।
এগুলি আমি দেখেছে এমন প্রতিটি * রেজেক্স ইঞ্জিনে কাজ করবে (যার মধ্যে কিছুতে এক বা একাধিক "+"
অক্ষরও নেই, উঘ)।
আপনি যদি জানেন যে আপনি আরও আধুনিক রেগেক্স ইঞ্জিনগুলির মধ্যে একটি ব্যবহার করবেন "\s"
এবং এর বিভিন্নতা হ'ল উপায়। তদতিরিক্ত, আমি বিশ্বাস করি শব্দের সীমাগুলি লাইনগুলির শুরু এবং শেষের সাথে মিলে যায়, আপনি যখন এমন শব্দের সন্ধান করেন তখন যেগুলি পূর্ববর্তী বা স্পেস অনুসরণ না করে প্রদর্শিত হতে পারে।
বিশেষত পিএইচপি জন্য, এই পৃষ্ঠা সাহায্য করতে পারে।
আপনার সম্পাদনা থেকে, এটি প্রদর্শিত হয় আপনি সমস্ত অ বৈধ অক্ষর মুছে ফেলতে চান এটির সূচনাটি হ'ল (রেজেক্সের অভ্যন্তরের স্থানটি নোট করুন):
$newtag = preg_replace ("/[^a-zA-Z0-9 ]/", "", $tag);
# ^ space here
আপনি যদি প্রতিটি শব্দের মধ্যে শুরু এবং শেষের মধ্যে কেবল একটিই জায়গা না রাখার বিষয়টি নিশ্চিত করতে কৌশলও চান তবে এটি কিছুটা জটিল (এবং সম্ভবত অন্য একটি প্রশ্ন) তবে মূল ধারণাটি হ'ল:
$newtag = preg_replace ("/ +/", " ", $tag); # convert all multispaces to space
$newtag = preg_replace ("/^ /", "", $tag); # remove space from start
$newtag = preg_replace ("/ $/", "", $tag); # and end