دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۸
  • مهر

جلسه ۱۵ : نوع رشته در متلب

  • دسته‌بندی‌ها :
جلسه ۱۵ : نوع رشته در متلب
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرنو کاربرانی که دوره کامل آموزش متلب را دنبال می کنند. نرم افزار متلب در واقع یک نرم افزار کدنویسی ریاضی و محاسباتی است. و شما در هنگام کار با آن با انواع اعداد مختلف (اعداد صحیح ، اعشاری ، کسری و…) بسیار سر و کار دارید. با این وجود متلب به شما اجازه می دهد تا کاراکترهای رشته ای یا اعداد را در قالب رشته تعریف کرده و آن ها را به متغیرها و یا انواع آرایه ها اختصاص دهید. همچنین توابع مختلفی را برای کار با رشته ها از جمله تبدیل رشته ها به یکدیگر ، تبدیل نوع عددی به رشته و … را فراهم می کند. برای آشنایی با نوع رشته در متلب و چگونگی استفاده از توابع مختلف در ادامه ی آموزش آشنایی با نوع رشته در متلب با ما همراه باشید.

      آشنایی با نوع رشته در متلب

      در ادامه ی مباحث آشنایی با نوع رشته در متلب شما را با چگونگی تعریف رشته و توابع آن آشنا می کنیم.

      ایجاد یک رشته کاراکتری در MATLAB بسیار ساده است.

      به عنوان مثال تخصیص رشته به یک متغیر به صورت زیر است :

      مثال : 

      نتیجه ی اجرای کد فوق در متلب بصورت زیر خواهد بود:

      مثال : 

      برای لیست کردن متغیرهای تعریف شده با جزئیات کامل آن، از تابع whos استفاده می کنیم:

      مثال : 

      نتیجه ی اجرای دستور فوق در متلب بصورت زیر خواهد بود:

      مثال : 

      همچنین شما می توانید از توابع تبدیل نوع عددی از جمله uint8 یا uint16 برای تبدیل کاراکترهای رشته ی عددی به عدد استفاده کنید.

      مثال – یک فایل اسکریپتی ایجاد کرده و کد زیر را در آن وارد کنید :

      مثال : 

      نتیجه ی اجرای کد فوق در متلب بصورت زیر خواهد بود:

      مثال : 

      آرایه مستطیل شکل

      رشته هایی که تاکنون تعریف کردیم در قالب آرایه های تک مقداری در متلب ذخیره می شوند.

      شما می توانید رشته ها را مانند داده های عددی در آرایه هایی با ابعاد و اندازه های مختلف ذخیره کنید.

      ساده ترین روش برای ایجاد آرایه ی یک بعدی سطری یا ستونی بصورت زیر است :

      شما می توانید رشته ها را در آرایه ها به طور عمودی در هر یک از روش های زیر ایجاد کنید:

      • می توانیم مقادیر رشته را در قالب یک براکت [] تایپ کرده و مقادیر را با سمی کولون (;) از هم جدا کنید.
      • می توانیم با استفاده از تابع char مقادیر رشته را تایپ نموده و با کاما (,) از هم جدا کنید.

      مثال – یک فایل اسکریپت ایجاد کرده و کد زیر را در آن تایپ نمائید:

      مثال : 

      نتیجه اجرای کد فوق در متلب بصورت زیر است :

      مثال : 

      شما می توانید رشته ها را به صورت افقی با هر یک از روش های زیر ایجاد کنید:

      • می توانیم مقادیر رشته را در قالب یک براکت [] تایپ کرده و مقادیر را با سمی کولون (;) از هم جدا کنید.
      • از تابع strcat استفاده کرده و مقادیر رشته را با کاما (,) از هم جدا کنید.

      مثال – یک فایل اسکریپت ایجاد کرده و کد زیر را در آن تایپ می کنیم:

      مثال : 

      نتیجه ی اجرای کد فوق در متلب بصورت زیر خواهد بود:

      مثال : 

      تعریف رشته ها در آرایه های سلولی

      در روش های قبلی تعریف رشته ها در آرایه با طول های متفاوت انجام شده و این کار مشکلاتی را بوجود می آورد.

      البته می توان فضای های خالی را به انتهای رشته ها برای برابر ساختن طول آن ها اضافه کرد.

      اما روش کارآمدتر برای تعریف مقادیر رشته ها با طول یکسان در آرایه استفاده از آرایه های سلولی است.

      تابع cellstr یک آرایه کاراکتری را به یک آرایه سلولی از رشته ها تبدیل می کند.

      مثال – یک فایل اسکریپ ایجاد کرده و کد زیر را در آن تایپ می نمائیم:

      مثال : 

      نتیجه ی اجرای کد فوق در متلب بصورت زیر خواهد بود:

      مثال : 

      توابع رشته ای در متلب

      متلب توابع رشته ای متعددی را برای ایجاد، ترکیب، تجزیه، مقایسه و دستکاری رشته ها ارائه می کند.

      جدول زیر توضیح مختصری از توابع رشته ای در MATLAB را ارائه می دهد:

      تابعکاربرد
      blanksایجاد رشته از کاراکترهای خالی
      cellstrایجاد آرایه ی سلولی از رشته های آرایه.
      charتبدیل به نوع آرایه ی کاراکتر رشته ای
      iscellstrتعیین اینکه آیا ورودی آرایه سلولی از رشته ها است.
      ischarتعیین اینکه آیا آیتم یک آرایه کاراکتر است.
      sprintfتبدیل فرمت داده به رشته
      strcatرشته ها را به صورت افقی ترکیب می کند.
      strjoinرشته ها را در آرایه سلولی به رشته تک مقداری اضافه می کند.

      توابع متلب برای شناسایی قطعات رشته ها، پیدا کردن و جایگزینی زیر رشته ها :

      تابعکاربرد
      ischarتعیین اینکه آیتم یک آرایه کاراکتر است یا خیر
      isletterآیا عناصر آرایه که حروف الفبا هستند یا خیر
      isspaceآیا بین عناصر آرایه فضای خالی هست یا خیر
      isstrpropتعیین اینکه آیا رشته از نوع مشخص شده است یا خیر
      sscanfداده های فرمت شده را از یک رشته می خواند
      strfindپیدا کردن یک رشته در سایر رشته ها
      strrepپیدا کردن و جایگزینی یک زیر رشته
      strsplitتقسیم رشته در تعداد مشخص شده
      strtokبخش انتخاب شده از رشته
      validatestringبررسی اعتبار یک متن رشته ای
      symvarبیان متغیرهای نمادین در عبارت
      regexpنمایش منظم (حساس به حروف)
      regexpiمطابقت منظم (حساس به محتوا)
      regexprepجایگزین رشته با استفاده از عبارت منظم
      regexptranslateرشته را به عبارت منظم ترجمه می کند.

      توابع مقایسه رشته ها

      تابعکاربرد
      strcmpمقایسه رشته ها (حروف حساس)
      strcmpiمقایسه رشته ها (حساس به محدوده)
      strncmpمقادیر اول n رشته ها (حروف حساس) را مقایسه می کند.
      strncmpiمقادیر اول n رشته ها (حساس به حروف)

      توابع برای تغییر رشته به حروف بزرگ یا کوچک، ایجاد و یا حذف فضای خالی

      تابعکاربرد
      deblankبلوک های خالی نوار از انتهای رشته
      strtrimحذف فضای خالی پیش رو و عقب رشته
      lowerتبدیل رشته به حروف کوچک
      upperتبدیل رشته با حروف بزرگ
      strjustحالت Justify کاراکترها

      مثال ها

      مثال های زیر برخی از توابع رشته ای فوق را نشان می دهد :

      قالب بندی رشته ها

      مثال – یک فایل اسکریپت ایجاد کرده و کد زیر را در آن تایپ می کنیم:

      مثال : 

      نتیجه ی اجرای کد فوق در متلب:

      مثال : 

      اتصال رشته ها

      مثال – یک فایل اسکریپت ایجاد کرده و کد زیر را در آن تایپ می نمائیم:

      مثال : 

      نتیجه ی اجرای کد فوق در متلب بصورت زیر خواهد بود :

      مثال : 

      پیدا کردن و جایگزینی رشته ها

      مثال – یک فایل اسکریپت ایجاد کرده و کد زیر را در آن تایپ می نمائیم:

      مثال : 

      نتیجه ی اجرای کد فوق در متلب بصورت زیر خواهد بود :

      مثال : 

      مقایسه ی رشته ها در متلب

      مثال – یک فایل اسکریپت ایجاد کرده و کد زیر را در آن تایپ می نمائیم:

      مثال : 

      نتیجه ی اجرای کد فوق در متلب بصورت زیر خواهد بود :

      مثال : 

      کلام آخر

      می دانیم که در واقع متلب یک نرم افزار محاسباتی و انجام معادلات و فرمول های ریاضی بوده و داده های عددی در آن نقش بسیاری دارند. با این وجود متلب از داده های کارکتری و رشته ها نیز پشتیبانی می کند از این رو مباحث این بخش را به آشنایی با نوع رشته در متلب اختصاص دادیم.

      QR:  جلسه ۱۵ : نوع رشته در متلب
      به اشتراک بگذارید