রেজেক্স, সাদা স্থান বা কোলন ব্যতীত প্রতিটি অ-অক্ষরীয় অক্ষর


131

আমি এই কোথাও এটি করতে পারি?

মূলত, আমি এম্পারস্যান্ডস, সেমিকোলনস, ডলারের লক্ষণ ইত্যাদির মতো বিভিন্ন ধরণের বিবিধ অক্ষরগুলির সাথে মিলানোর চেষ্টা করছি


13
/[^a-zA-Z0-9\s\:]*/
কেলি

উত্তর:


246
[^a-zA-Z\d\s:]
  • \ d - সংখ্যার ক্লাস
  • - গুলি - সাদা স্থান
  • a-zA-Z - সমস্ত অক্ষরের সাথে মেলে
  • ^ - এগুলিকে অবহেলা করে - সুতরাং আপনি পান - অংকিত অক্ষর, ফাঁকা স্থান এবং অ-কোলন নেই

এটি আমিও লক্ষ্য করছিলাম :)) - আমাকে আপনার সঠিক উত্তরটি প্রচার করতে হবে
টিউডর কনস্ট্যান্টিন

7
কেবলমাত্র আমি খুঁজে পেলাম এটি é বা ã এর মতো বিশেষ অক্ষরগুলি সরিয়ে দেয় ã আমি পছন্দ করব [^ \ w \ d \ s:]।
এরিক বেলার

5
ডাউনভোটেড কারণ এটি অ ল্যাটিন অক্ষরগুলি, না "বিশেষ" লাতিন অক্ষরকে ধরে ফেলবে।
দামিয়ান

\dএবং \sপার্ল এক্সটেনশন যা সাধারণত পুরোনো সরঞ্জাম দ্বারা সমর্থিত নয় মত grep, sed, tr, lexইত্যাদি,
tripleee

38

এটি করা উচিত:

[^a-zA-Z\d\s:]

1
বাকী হয় স্থানের জন্য পরীক্ষা করে তবে হোয়াইটস্পেস নয় বা ভুল জায়গায় স্পষ্টতই প্রত্যাখ্যান করতে পারে।
জাচারি স্কট

\ ডাব্লু আন্ডারস্কোরগুলিও ধরেছে - যা একটি অ-অক্ষরযুক্ত চরিত্র
টিউডর কনস্ট্যান্টিন

আহা! আমি সংশোধন করব - আমি এটি জানতাম না। আমি আশা করি এটি বিভিন্ন ইঞ্জিনের জন্য আলাদাভাবে কাজ করে, তবে ওপিটিকে নিরাপদ উত্তর দিতে পারে।
লুক স্নেরিঞ্জার

2
ডাউনভোটেড কারণ এটি অ ল্যাটিন অক্ষরগুলি, না "বিশেষ" লাতিন অক্ষরকে ধরে ফেলবে।
দামিয়ান

16

আপনি যদি উচ্চারণযুক্ত লাতিন অক্ষরগুলিকে (যেমন à Ñ normal) সাধারণ অক্ষর হিসাবে বিবেচনা করতে চান (উদাহরণস্বরূপ সেগুলি মিলে যাওয়া এড়ান ), আপনার যথাযথ ইউনিকোড পরিসর ( \ u00C0- 00 u00FF ) আপনার রেজেক্সে অন্তর্ভুক্ত করতে হবে, তাই এটি এই মত দেখতে হবে:

/[^a-zA-Z\d\s:\u00C0-\u00FF]/g
  • ^ যা অনুসরণ করে তা অবহেলা করে
  • a-zA-Z বড় এবং ছোট হাতের অক্ষরের সাথে মেলে
  • \d সংখ্যার সাথে মেলে
  • \s সাদা স্থানের সাথে মেলে (যদি আপনি কেবল ফাঁকা জায়গাগুলির সাথে মেলে করতে চান তবে এটি একটি স্থানের সাথে প্রতিস্থাপন করুন)
  • : একটি কোলনের সাথে মেলে
  • \u00C0-\u00FF উদ্বেগিত লাতিন অক্ষরের জন্য ইউনিকোড পরিসরের সাথে মেলে।

বিশেষ দ্রষ্টব্য। ইউনিকোড পরিসীমা ম্যাচিং সব Regex ইঞ্জিনের জন্য কাজ নাও করতে পারে, কিন্তু (যেমন দেখা অবশ্যই উপরে জাভাস্ক্রিপ্ট কাজ করে এই কলম Codepen তে) খুলুন।

nb2। যদি আপনি আন্ডারস্কোরগুলির সাথে মিলে যাওয়া নিয়ে বিরক্ত না হন তবে আপনি প্রতিস্থাপন করতে পারেন যা অক্ষর, অঙ্ক এবং আন্ডারস্কোরের a-zA-Z\dসাথে \wমেলে।


এই পরিসীমা পোলিশ, চেক, ভিয়েতনামী ইত্যাদি অ-পাশ্চাত্য ভাষা থেকে বৈধ স্বরাঘাতযুক্ত অক্ষর অনেক কিছু অক্ষর আছে যা আলফানিউমেরিক (ইউ + + 00D7 এবং U + এ 00F7) হয় না, এবং বাদ রয়েছে
tripleee

1
RegEx এর প্রতিটি অংশের বর্ণনার জন্য উত্সাহিত।
মোরাজাবি

14

এটা চেষ্টা কর:

[^a-zA-Z0-9 :]

জাভাস্ক্রিপ্ট উদাহরণ:

"!@#$%* ABC def:123".replace(/[^a-zA-Z0-9 :]/g, ".")

একটি অনলাইন উদাহরণ দেখুন:

http://jsfiddle.net/vhMy8/


3
ডাউনভোটেড কারণ এটি অ ল্যাটিন অক্ষরগুলি, না "বিশেষ" লাতিন অক্ষরকে ধরে ফেলবে।
দামিয়ান

14
উত্তরের উত্তর দেওয়া সহজ, এবং বোর্ডকে গঠনমূলক তথ্য সরবরাহ করা আরও বেশি কঠিন, উদাহরণস্বরূপ, কেউ কীভাবে নন-লাতিন অক্ষর বা "বিশেষ" লাতিন অক্ষরগুলি ধরবে? আমার এখানে গণনা হিসাবে আপনি একই কারণে 3 টি উত্তর লিখেছেন, এবং আমার মতে একটি সামান্য সামান্য টুইটের জন্য। উদাহরণস্বরূপ, আমি এখানে এই উত্তরগুলিতে ঠিক কী আলোচনা করা হয়েছে তার জন্য একটি রেজেক্স সন্ধান করতে এসেছি। আমি এমন চরিত্রের সেটগুলির বিষয়ে চিন্তা করি না যা আমার প্রয়োগে ব্যবহৃত হবে না। হ্রাসকারী রিটার্নের আইন।

অ্যারন কোনও মার্কিন নাগরিকের কাছে "গৌণ টুইট" হতে পারে তবে এই গ্রহের বাকী অংশগুলির জন্য অত্যন্ত প্রাসঙ্গিক।
মাইকেল কে। বোরেগার্ড


4

যদি আপনার অর্থ "অ-অক্ষরীয় অক্ষর" থাকে তবে এটি ব্যবহারের চেষ্টা করুন:

var reg =/[^a-zA-Z0-9]/g      //[^abc]

1

এই রেজেক্স সি # , পিসিআরই এবং কয়েকটি নাম নিয়ে যান

এটি রেগেক্সবাডি যা বলে তা ক্রোমে জাভাস্ক্রিপ্টের জন্য কাজ করে না । তবে এর জন্য এখানে ইতিমধ্যে একটি উদাহরণ রয়েছে।

এর মূল অংশটি হ'ল:

\p{L}

যা প্রতিনিধিত্ব করে \p{L}বা \p{Letter}যে কোনও ভাষা থেকে কোনও প্রকারের চিঠি `


সম্পূর্ণ রেজেক্স নিজেই: [^\w\d\s:\p{L}]

উদাহরণ: https://regex101.com/r/K59PrA/2


এখানে একমাত্র উত্তর যা ইউনিকোড উচ্চারণযুক্ত বর্ণমালার সাথে সঠিক উপায়ে ডিল করে। দুঃখের বিষয়, সমস্ত রেজেক্স ইঞ্জিনই এই সুবিধাটি সমর্থন করে না (এমনকি পাইথন এটির অভাব বোধ করে, 3.8 হিসাবে এটির রেজেক্স ইঞ্জিনটি অবশ্যই পিসিআর ভিত্তিক)।
ট্রিপলি

1
আমি উত্তর থেকে পাইথন সরিয়ে ফেলব, আমি ভেবেছিলাম আমি এটি পরীক্ষা করেছি তবে দৃশ্যত তা হয়নি। যে ইশারা জন্য ধন্যবাদ।
স্টে

0

এটি যুক্ত করার চেষ্টা করুন:

^[^a-zA-Z\d\s:]*$

এটি আমার পক্ষে কাজ করেছে ... :)


এই 2011 দ্য থেকে গৃহীত উত্তর পুনরাবৃত্তি বলে মনে হয় ^এবং $এটি সমগ্র লাইন এবং মেলে নোঙ্গর অবরোধ *কোয়ান্টিফায়ার উপায়ে এটি খালি লাইন মেলে।
ট্রিপলি

0

জাভাস্ক্রিপ্টে:

/[^\w_]/g

^অবহেলা, অর্থাত্ নিম্নোক্ত সেটে কিছু না নির্বাচন করুন

\w যে কোনও শব্দের অক্ষর (যেমন কোনও বর্ণানুক্রমিক অক্ষর, আন্ডারস্কোর)

_ আন্ডারস্কোর অবহেলা করুন, কারণ এটি 'শব্দ' চরিত্র হিসাবে বিবেচিত হয়

ব্যবহারের উদাহরণ - const nonAlphaNumericChars = /[^\w_]/g;

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.