שיטות מחרוזת אודם מוסברות - אורך, ריק ושיטות מובנות אחרות

לרובי יש שיטות מובנות לעבודה עם מיתרים. מחרוזות ברובי כברירת מחדל ניתנות לשינוי וניתן לשנות אותן במקומן או להחזיר מחרוזת חדשה משיטה.

אורך

.lengthהרכוש מחזיר את מספר התווים במחרוזת כולל שטח לבן.

"Hello".length #=> 5 "Hello World!".length #=> 12

ריק

.empty?השיטה מחזירה trueאם מחרוזת בעל אורך של אפס.

"Hello".empty? #=> false "!".empty? #=> false " ".empty? #=> false "".empty? #=> true

לספור

.countספירת השיטה כמה פעמים דמות ספציפית (הים) נמצאת במחרוזת.

שיטה זו תלויה באותיות רישיות.

"HELLO".count('L') #=> 2 "HELLO WORLD!".count('LO') #=> 1

לְהַכנִיס

.insertהשיטה מוסיפה מחרוזת למחרוזת אחרת לפני מדד נתון.

"Hello".insert(3, "hi5") #=> Helhi5lo # "hi5" is inserted into the string right before the second 'l' which is at index 3

קופסה

.upcaseהשיטה הופכת את כל האותיות במחרוזת לאותיות גדולות.

"Hello".upcase #=> HELLO

מטען

.downcaseהשיטה הופכת את כל האותיות במחרוזת לאותיות קטנות.

"Hello".downcase #=> hello

החלפה

.swapcaseהתמרות שיטת latters הרישיות במחרוזת לאותיות קטנות ואת האותיות הקטנות לאותיות רישיות.

"hELLO wORLD".swapcase #=> Hello World

לְנַצֵל

.capitalizeהשיטה להפוך את האות הראשונה רישית מחרוזת ואת שאר קטנה במחרוזת.

"HELLO".capitalize #=> Hello "HELLO, HOW ARE YOU?".capitalize #=> Hello, how are you?

שים לב שהאות הראשונה באותיות רישיות רק אם היא נמצאת בתחילת המחרוזת.ruby "-HELLO".capitalize #=> -hello "1HELLO".capitalize #=> 1hello

לַהֲפוֹך

.reverseהשיטה הופכת את סדר התווים במחרוזת.

"Hello World!".reverse #=> "!dlroW olleH"

לְפַצֵל

ה- .splitלוקח חוטים ומחלק אותו למערך ואז מחזיר את המערך.

"Hello, how are you?".split #=> ["Hello,", "how", "are", "you?"]

שיטת ברירת המחדל מחלקת את המחרוזת על סמך מרחב לבן, אלא אם כן מסופק מפריד אחר (ראה דוגמה שנייה).

"H-e-l-l-o".split('-') #=> ["H", "e", "l", "l", "o"]

לִקצוֹץ

.chopהשיטה מסירה את התו האחרון של המחרוזת.

מחרוזת חדשה מוחזרת, אלא אם כן אתה משתמש .chop!בשיטה המוטטת את המחרוזת המקורית.

"Name".chop #=> Nam
name = "Batman" name.chop name == "Batma" #=> false
name = "Batman" name.chop! name == "Batma" #=> true

לְהִתְפַּשֵׁט

.stripהשיטה מסירה את הרווחים מובילים ונגררים על מחרוזות, כולל כרטיסיות, בשורה חדשה, וחוזר מרכבה ( \t, \n, \r).

" Hello ".strip #=> Hello

צ'ומפ

.chompהשיטה מסירה את התו האחרון במחרוזת, רק אם זה מעבר לשורה חדשה או שורה חדשה ( \r, \n).

בדרך כלל משתמשים בשיטה זו עם getsהפקודה להסרת החזרות מקלט המשתמש.

"hello\r".chomp #=> hello "hello\t".chomp #=> hello\t # because tabs and other whitespace remain intact when using `chomp`

לשלם

.to_iשיטת ממירה מחרוזת למספר שלם.

"15".to_i #=> 15 # integer

Gsub

gsub מחליף כל הפניה של הפרמטר הראשון עבור הפרמטר השני במחרוזת.

"ruby is cool".gsub("cool", "very cool") #=> "ruby is very cool"

gsubמקבל גם דפוסים (כמו regexp ) כפרמטר ראשון, ומאפשר דברים כמו:

"ruby is cool".gsub(/[aeiou]/, "*") #=> "r*by *s c**l"

שִׁרשׁוּר

Ruby implements some methods to concatenate two strings together.

The + method:

"15" + "15" #=> "1515" # string

The << method:

"15" < "1515" # string

The concat method:

"15".concat "15" #=> "1515" # string

Index

The index method returns the index position of the first occurrence of the substring or regular expression pattern match in a string. If there is no match found, nil is returned.

A second optional parameter indicates which index position in the string to begin searching for a match.

"information".index('o') #=> 3 "information".index('mat') #=> 5 "information".index(/[abc]/) #=> 6 "information".index('o', 5) #=> 9 "information".index('z') #=> nil

Clear

Removes string content.

a = "abcde" a.clear #=> ""