স্ট্রিং থেকে টেক্সট কীভাবে সরাবেন?


উত্তর:


1155

var ret = "data-123".replace('data-','');
console.log(ret);   //prints: 123

ডক্স।


সমস্ত ঘটনা বাতিল করার জন্য:

var ret = "data-123".replace(/data-/g,'');

পিএস: প্রতিস্থাপন ফাংশনটি একটি নতুন স্ট্রিং প্রদান করে এবং মূল স্ট্রিংটি অপরিবর্তিত রেখে দেয়, তাই প্রতিস্থাপন () কলের পরে ফাংশন রিটার্ন মানটি ব্যবহার করুন।


একাধিক এক্সপ্রেশন কীভাবে প্রতিস্থাপন করবেন? আপনার কি একাধিক .replace কল ব্যবহার করতে হবে?
ভয়ঙ্কর বার

124

JQuery এর সাথে এর কোনও যোগসূত্র নেই। আপনি এর replaceজন্য জাভাস্ক্রিপ্ট ফাংশন ব্যবহার করতে পারেন :

var str = "data-123";
str = str.replace("data-", "");

আপনি এই ফাংশনে একটি রেজেক্সও পাস করতে পারেন। নিম্নলিখিত উদাহরণে, এটি সংখ্যার ব্যতীত সমস্ত কিছু প্রতিস্থাপন করবে:

str = str.replace(/[^0-9\.]+/g, "");

আপনি ব্যাখ্যা করতে পারেন রেজেক্স কি করে? যদি 0-9এটি নির্দেশিত হয় তবে এটি সংখ্যার বাইরে স্ট্রিংয়ের পরিবর্তে কেন তা পাবে না ।
রোটিমি সেরা

60

আপনি ব্যবহার করতে পারেন "data-123".replace('data-','');, যেমন উল্লেখ করা হয়েছে, কিন্তু replace()শুধুমাত্র প্রতিস্থাপন প্রথম মত ম্যাচিং লেখার উদাহরণস্বরূপ কিছু, যদি আপনার স্ট্রিং ছিল "data-123data-"তারপর

"data-123data-".replace('data-','');

কেবলমাত্র প্রথম মিলের পাঠ্য প্রতিস্থাপন করবে। এবং আপনার আউটপুট হবে"123data-"

ডেমো

সুতরাং আপনি যদি চান যে সমস্ত পাঠের টেক্সট স্ট্রিংয়ে প্রতিস্থাপন করা হয় তবে আপনাকে gপতাকাটির মতো নিয়মিত প্রকাশ করতে হবে:

"data-123data-".replace(/data-/g,'');

এবং আপনার আউটপুট হবে "123"

DEMO2


28

আপনি স্লাইস ব্যবহার করতে পারেন () এটি শুরু থেকে শেষের মধ্যে চার্টারগুলিকে পুনরুদ্ধার করে (অন্তর্ভুক্ত শেষ পয়েন্ট)

   string.slice(start , end);

এটি কীভাবে কাজ করে তা দেখানোর জন্য এখানে কিছু এক্সপাম দেওয়া হয়েছে:

var mystr = ("data-123").slice(5); // jast define start point so output is "123"
var mystr = ("data-123").slice(5,7); // define start and end  so output is "12"
var mystr=(",246").slice(1); // returens "246"

ডেমো


23

সরল পুরানো জাভাস্ক্রিপ্ট যথেষ্ট হবে - এই জাতীয় কোনও সহজ কাজের জন্য jQuery প্রয়োজনীয় নয়:

var myString = "data-123";
var myNewString = myString.replace("data-", "");

দেখুন: অতিরিক্ত তথ্য এবং ব্যবহারের জন্য .replace()MDN এ ডক্স



11

আমি সি # (শার্প) স্ট্রিং.টি সরানোর পদ্ধতিতে অভ্যস্ত ছিলাম। জাভাস্ক্রিপ্টে স্ট্রিংয়ের জন্য কোনও অপসারণ ফাংশন নেই, তবে সাবস্ট্রাস্ট ফাংশন রয়েছে। স্ট্রিং থেকে অক্ষরগুলি সরাতে আপনি একবার বা দুবার সাবস্ট্রাস্ট ফাংশনটি ব্যবহার করতে পারেন। আপনি স্ট্রিংয়ের শেষে সূচকগুলিতে অক্ষরগুলি সরাতে নিম্নোক্ত ফাংশনটি তৈরি করতে পারেন, ঠিক সি # পদ্ধতির মতো প্রথম ওভারলোড স্ট্রিংয়ের মতো em

function Remove(str, startIndex) {
    return str.substr(0, startIndex);
}

এবং / অথবা আপনি সি সূত্রের সূচি এবং গণনাতে অক্ষরগুলি সরাতে নিম্নলিখিত ফাংশনটি তৈরি করতে পারেন, ঠিক সি # পদ্ধতির দ্বিতীয় ওভারলোড স্ট্রিংয়ের মতো em

function Remove(str, startIndex, count) {
    return str.substr(0, startIndex) + str.substr(startIndex + count);
}

এবং তারপরে আপনি আপনার প্রয়োজনের জন্য এই দুটি ফাংশন বা এর একটি ব্যবহার করতে পারেন!

উদাহরণ:

alert(Remove("data-123", 0, 5));

আউটপুট: 123


9

আমি তৈরি এই ছোট ফাংশনটি সর্বদা আমার জন্য কাজ করেছে :)

String.prototype.deleteWord = function (searchTerm) {
    var str = this;
    var n = str.search(searchTerm);
    while (str.search(searchTerm) > -1) {
        n = str.search(searchTerm);
        str = str.substring(0, n) + str.substring(n + searchTerm.length, str.length);
    }
    return str;
}

// Use it like this:
var string = "text is the the cool!!";
string.deleteWord('the'); // Returns text is cool!!

আমি জানি এটি সেরা নয় তবে এটি সর্বদা আমার পক্ষে কাজ করেছে :)


আপনি আপনার উত্তরে দেখিয়ে দিচ্ছেন যে স্ট্রিংয়ের প্রতিস্থাপনের ফাংশনটি কীভাবে কম বেশি কাজ করে তবে সত্যই স্ট্রিংয়ের রিপ্লেজ ফাংশনটি ব্যবহার করা আরও সহজ এবং সহজ কোড তবে আপনার!

9
str.split('Yes').join('No'); 

এটি মূল স্ট্রিং থেকে নির্দিষ্ট স্ট্রিংয়ের সমস্ত উপস্থিতি প্রতিস্থাপন করবে।


8

একটি ভেরিয়েবল ব্যবহার match()এবং Number()ফিরিয়ে numberআনার জন্য:

Number(("data-123").match(/\d+$/));

// strNum = 123

উপরোক্ত বিবৃতিটি এখানে যা করছে ... মিডল আউট কাজ করছে:

  1. str.match(/\d+$/)- শেষের দিকে সংখ্যার যে কোনও দৈর্ঘ্যে ম্যাচযুক্ত একটি অ্যারে প্রদান করে str। এই ক্ষেত্রে এটি একটি একক স্ট্রিং আইটেমযুক্ত অ্যারে প্রদান করে ['123']
  2. Number()- এটি একটি সংখ্যার ধরণের রূপান্তর করে। কারণ ফিরে আসা অ্যারেতে .match()একটি একক উপাদান রয়েছে এটির Number()সংখ্যা ফিরে আসবে।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.