.NET এ স্ট্রিং থেকে ডাবল উক্তি স্ট্রিপ করুন


101

আমি কিছু অসামঞ্জস্যপূর্ণ ফর্ম্যাট এইচটিএমএল এর সাথে মেলানোর চেষ্টা করছি এবং কিছু ডাবল উদ্ধৃতি বের করতে হবে।

বর্তমান:

<input type="hidden">

লক্ষ:

<input type=hidden>

এটি ভুল কারণ আমি এটিকে যথাযথভাবে এড়িয়ে যাচ্ছি না:

s = s. প্রতিস্থাপন ("" "," ");

এটি ভুল কারণ এখানে ফাঁকা চরিত্রের অক্ষর নেই (আমার জ্ঞানের):

s = s.Replace('"', '');

একটি খালি স্ট্রিংয়ের সাথে ডাবল উদ্ধৃতিগুলি প্রতিস্থাপনের জন্য সিনট্যাক্স / এস্কেপ অক্ষরের সমন্বয় কী?

উত্তর:


215

আমি মনে করি আপনার প্রথম লাইনটি আসলে কাজ করবে তবে আমি মনে করি একটি স্ট্রিংযুক্ত স্ট্রিংয়ের জন্য আপনার চারটি উদ্ধৃতি চিহ্নের প্রয়োজন (কমপক্ষে ভিবিতে):

s = s.Replace("""", "")

সি # এর জন্য আপনাকে ব্যাকস্ল্যাশ ব্যবহার করে উদ্ধৃতি চিহ্ন থেকে বাঁচতে হবে:

s = s.Replace("\"", "");

4
স্ট্রিংয়ের মধ্যে আরও এম্বেড থাকা উদ্ধৃতিগুলি থাকলে এর পার্শ্ব প্রতিক্রিয়া রয়েছে
— আদিথ রামিয়া

30

আমি আমার চিন্তাগুলি ইতিমধ্যে পুনরাবৃত্তি করতে দেখিনি, তাই আমি আপনাকে পরামর্শ দেব যে আপনি string.Trimসি # এর জন্য মাইক্রোসফ্ট ডকুমেন্টেশনে সন্ধান করুন আপনি খালি জায়গাগুলি ছাঁটাইয়ের পরিবর্তে ছাঁটাই করার জন্য একটি চরিত্র যুক্ত করতে পারেন:

string withQuotes = "\"hellow\"";
string withOutQotes = withQuotes.Trim('"');

এর "hello"পরিবর্তে আউটকিউটস থাকা উচিত""hello""


26
s = s.Replace("\"", "");

স্ট্রিংয়ে ডাবল উদ্ধৃতি চরিত্রটি থেকে বাঁচতে আপনাকে use ব্যবহার করতে হবে।


4
স্ট্রিংয়ের মধ্যে আরও এম্বেড থাকা উক্তি পাওয়া গেলে এর একটি পার্শ্ব প্রতিক্রিয়া রয়েছে
— আদিথ রামিয়া

14

আপনি এগুলির মধ্যে যে কোনও একটি ব্যবহার করতে পারেন:

s = s.Replace(@"""","");
s = s.Replace("\"","");

... তবে আমি কেন কৌতূহল বোধ করি যে আপনি এটি করতে চান? আমি ভেবেছি এট্রিবিউট মানগুলি বদ্ধ রাখা ভাল অনুশীলন?


4
আমি একটি নির্দিষ্ট লিঙ্ক খুঁজে পেতে এইচটিএমএল এগ্রিলিটি প্যাকটি ব্যবহার করছি এবং তারপরে আমাকে HTML লিখিত পাঠ্য থেকে সেই লিঙ্কের একটি মান সরিয়ে ফেলতে হবে। এইচটিএমএল অ্যাগিলিটি প্যাকটি বৈশিষ্ট্যটির মানগুলি উদ্ধৃত করে, তবে মূল এইচটিএমএল উদ্ধৃত হয় না। (এবং এটি একটি পরীক্ষার জন্য সমস্ত।)
— এমনকি মিয়েন

4
স্ট্রিংয়ের মধ্যে আরও এম্বেড থাকা উক্তি পাওয়া গেলে এর একটি পার্শ্ব প্রতিক্রিয়া রয়েছে
— আদিথ রামিয়া


5

সি #:, "\""এভাবেs.Replace("\"", "")

vb / vbs / vb.net: ""এভাবেs.Replace("""", "")


স্ট্রিংয়ের মধ্যে আরও এম্বেড থাকা উক্তি পাওয়া গেলে এর একটি পার্শ্ব প্রতিক্রিয়া রয়েছে
— আদিথ রামিয়া

3

আপনি একটি ব্যাকস্ল্যাশ সঙ্গে ডাবল উদ্ধৃতি এড়াতে হবে।

s = s.Replace("\"","");

4
স্ট্রিংয়ের মধ্যে আরও এম্বেড থাকা উক্তি পাওয়া গেলে এর একটি পার্শ্ব প্রতিক্রিয়া রয়েছে
— আদিথ রামিয়া


1

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

//Sentence has quotes
string nameSentence = "Take my name \"Wesley\" out of quotes";
//Get the index before the quotes`enter code here`
int begin = nameSentence.LastIndexOf("name") + "name".Length;
//Get the index after the quotes
int end = nameSentence.LastIndexOf("out");
//Get the part of the string with its quotes
string name = nameSentence.Substring(begin, end - begin);
//Remove its quotes
string newName = name.Replace("\"", "");
//Replace new name (without quotes) within original sentence
string updatedNameSentence = nameSentence.Replace(name, newName);

//Returns "Take my name Wesley out of quotes"
return updatedNameSentence;

1

আপনি যদি কেবল স্ট্রিংয়ের মাঝের অংশটি (মাঝের নয়) থেকে স্ট্রিটগুলি সরিয়ে ফেলতে চান এবং স্ট্রিংয়ের উভয় প্রান্তে ফাঁকা স্থান থাকতে পারে (যেমন একটি সিএসভি ফর্ম্যাট ফাইল পার্সিং করার পরে যেখানে স্পেস রয়েছে সেখানে) কমা), তারপরে আপনার দু'বার ট্রিম ফাংশনটি কল করা দরকার ... উদাহরণস্বরূপ:

string myStr = " \"sometext\"";     //(notice the leading space)
myStr = myStr.Trim('"');            //(would leave the first quote: "sometext)
myStr = myStr.Trim().Trim('"');     //(would get what you want: sometext)

0
s = s.Replace( """", "" )

একে অপরের পাশের দুটি উক্তি একটি স্ট্রিংয়ের অভ্যন্তরে যখন "চরিত্রের উদ্দেশ্যে" কাজ করবে।


4
স্ট্রিংয়ের মধ্যে আরও এম্বেড থাকা উক্তি পাওয়া গেলে এর একটি পার্শ্ব প্রতিক্রিয়া রয়েছে
— আদিথ রামিয়া

0

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

আপনার এক্সটেনশন পদ্ধতিগুলি সহ একটি শ্রেণিতে নীচের পদ্ধতিটি যুক্ত করুন।

  public static string Remove(this string text, char character)
  {
      var sb = new StringBuilder();
      foreach (char c in text)
      {
         if (c != character)
             sb.Append(c);
      }
      return sb.ToString();
  }

তারপরে আপনি এই এক্সটেনশন পদ্ধতিটি ব্যবহার করতে পারেন:

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