6-3 字串的常用方法 length indexOf slice substr replace
Lesson: 6-3 字串的常用方法 length indexOf slice substr replace
6-3 字串的常用方法 length indexOf slice substr replace
講義
1. 取得字串長度與索引
.length屬性:取得字串的總長度。- 範例:
var str = "hello";➝str.length為5。 - 注意:最後一個字元的索引值是
length - 1。
- 範例:
2. 搜尋字串內容
.indexOf(value):從左側開始找,回傳第一個符合內容的索引。找不到則回傳-1。.lastIndexOf(value):從右側開始找,回傳第一個符合內容的索引。.search(regex):可配合正規表達式 (Regular Expression) 進行更複雜的搜尋。
3. 擷取子字串 (Extraction)
.slice(start, end):- 從
start擷取到end之前(不包含end本身)。 - 若只有一個參數,則從該位置擷取到最後。
- 從
.substring(start, end)/.substr(start, length):substring與slice類似,但在某些邊界條件處理上略有不同。substr(較舊語法) 的第二個參數是「要擷取的長度」。
4. 替換與大小寫轉換
.replace(oldValue, newValue):- 將部分內容替換掉。
- 重要:字串是不可變的,
replace會回傳一個新字串,不會直接修改原始變數。如需保存結果請重新賦值:str = str.replace(...)。
- 大小寫轉換:
.toUpperCase():將英文全部轉為大寫。.toLowerCase():將英文全部轉為小寫。
影片逐字稿 (AI 生成)
接下來我們要介紹 字串的常用方法 63那我們要取字串的內容的位置然後我們要截取文字然後再來我們要替換字串的內容好 首先我們今天已經講了很多字串可是我們卻不知道怎麼樣拿到它的長度那在這一份code 你就可以拿到它的長度那這個東西叫做 length 就是長度所以你可以直接在後面點 length好 那我們看一下這個 sample code好 然後我們在這邊好 我們先把它 clear 清掉好的這邊就可以拿到26那或者是我可以再寫另外一個我自己喜歡的字串比如說像簡單的 hello worldA.length的長度它就直接告訴我說它的長度是11那大家請注意因為你的index是從0開始所以請勿做A11找不到是0到10 有11格喔所以最後一個字是10好不好0到10嘛那總共有11個數字嘛好好的 再來是index of那它在這邊範例是說我在資測會上課然後它要找資測會那這邊它會找到第幾個這邊是0對不對0 1 2所以這是第二個OK那我們可以來看一下是不是結果與就是它寫的是相符合不行 好沒有東西先清掉然後我們去然後我們去它剛剛是index對不對console.logconsole.logtxt.index of他會跟你講2對不對2是不是在0 1 2對不對在這裡所以你可以找到呃資測會是第二個這裡所以我就可以做什麼我可以tex然後我可以2所以我就欸打錯不好意思txt的第二個所以就找到資對不對好我們今天只有學兩個現在這一頁只有學兩個姿勢length跟index of好那我們融合這兩個姿勢好不好我們可以得到什麼呢要融合嗎融合大家有好等一下再講好好的好在這邊呢我們看一下這一這個文字就是這個叫做last index of那last index of的做法是從原本我們找index of都是從左邊找到右邊那last index of是從右邊找到左邊那這邊呢我們看到克四串裡面有兩個克對不對一個克是前面上克的克另外一個克是克層的克那這個的last index of會從右邊開始找到這一個可是它還是從前面開始數所以012345678OK那我們可以接受嗎012345678克或是我直接數字我是0嘛對不對012345678從右邊找到的第一個克好那就是這邊可是它的index還是所以這個是第八個好那我們不好看call然後我們要把這個8先拿掉好是8OK沒有什麼問題好的那這邊呢我們要找字那這個我們會用到一個東西叫做regular expression那regular expression大家可以有更多的語法大家可以上網去查regular expression要怎麼寫那這邊主要我們要找的是數字字母底線的字那在這邊應該就是這個j就是英文字好那我們看一下這份call跑起來的樣子然後我們把console lock他找到11那我們可以看一下txtt然後11是什麼是j他找到的是這樣子走過來找到的是第11是這個j符合這個反斜線w的條件OK那regular expression就是讓大家就是再去google再查更多就是怎麼樣使用regular expression好再來我們要講到的是擷取文字那我們要擷取文字呢比如說我今天想要擷取第二個到第五個那我現在擷取會是擷取到什麼我在字測會上課我是0嘛12是這個嘛字對不對2 3 45就是這樣嘛可是因為他這個是尾巴所以5他不會上就不會選到所以他只會選到字測會那你如果是用間隔來看這件事情其實會更清楚為什麼呢因為如果第0個是在我前面這一個那就是012是不是字前面對不對2345那這邊是不是剛好在會後面這裡所以剛好就是字測會這三個好的那我們來擷擷看好這樣是不是就看到字測會那同時呢如果你只有塞一個的話他就只會把前面切掉slice2後面都還要留著ok好所以我們可以這樣來切一個字或是6的話就是字測會上這樣子好的好 再來我們要學這個是substring那substring的語法跟slice不太一樣的事情是他們兩個共同的都是begin和index和start的都是找到最開始哪一個可是slice是說結束的你要知道結束的位置是5可是substring他是說我要切幾格所以這邊是切三格對不對我要字測會我要三格字所以這樣子所以他就是2跟3那我們來看看subsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsubsub再來我們把console.log這個東西放進來那這時候我們txt就變成是還是一樣為什麼呢因為replace沒有把原本的字串改掉喔我們剛印出來的時候replace之後這個東西它改了可是它是印出來對不對所以如果我們今天要replace它同時要改到原本的值這時候要多做一個動作就是我要txt等於replace這邊replace完的要回存回去好不好我們replace完我們回存回去這時候txt的值就改變了OK嗎原本我做replace只是說我先把它拿出來就是暫存然後輸出去可是我沒有改變原本的值我要把它用等於傳進去以後它才會改變原本的值好了最後這兩個最簡單一個是to upper case一個是to lower case那這個範例其實蠻有趣的因為它有中英夾雜那這邊它只會去改變你英文的英文的小寫英文的大寫保持大寫小寫變成大寫然後我們這邊去做txt點什麼to upper case不好意思我to upper case我要執行這個我要這個方形要執行好這樣子有沒有JavaScript就都變大寫了有沒有to upper case要記得要加小瓜糊小瓜糊才會執行如果沒有加小瓜糊它是一個function好這樣子那我們也可以把它全部轉換成小寫對不對to lower case有沒有JavaScript原本的大寫大寫J就變小寫了OK這是轉換成大寫然後轉換成小寫好啦本章的重點就是我們看到的就是Stream它可以的文字型的資料然後再來我們學會怎麼用反斜線來做跳脫字圓還有一些常用的比如說換行啊tab的做法那再來呢我們學會用學會量就是字串的長度然後它的還有去搜尋用Regular Expression去搜尋再來我們可以用slice和substring來切就是我想要的子字串還有我可以用replace來把我的字串裡面的某些字換掉換成我想要的好這就是字串第六章的部分OK
影片逐字稿largev2
接下來我們要介紹 字串的常用方法63那我們要取字串的內容的位置然後我們要擷取文字然後再來我們要替換字串的內容好 首先我們今天已經講了很多的字串可是我們卻不知道怎麼樣拿到它的長度那在這一份 code 你就可以拿到它的長度那這個東西叫做 length 就是長度所以你可以直接在後面點 length好 那我們看一下這個 sample code好 然後我們在這邊好 我先把它 clear 掉 清掉好的這邊就可以拿到 26那或者是我可以再寫另外一個我自己喜歡的字串比如說像 簡單的 hello worlda.length 的長度它就直接告訴我說它有11 它的長度是11那大家請注意因為你的 index 是從0開始所以請勿做 a11找不到是0到10 有11格喔所以最後一個字是10 好不好ok0到10嘛它總共有11個數字嘛好好的 再來是 index of那它在這邊範例是說我在資測會上課然後它要找資測會那這邊它會找到第幾個這邊是 0 對不對0、1、2所以是第二個ok那我們可以來看一下是不是結果與它寫的是相符合不行好 沒關係先清掉然後我們去它剛剛是 index of 對不對console.log好console.logtxt.indexofindex of資資測會它會跟你講 2 對不對2 是不是在0、1、2 對不對在這裡ok所以你可以找到資測會是第二個 這裡所以我就可以做什麼我可以text然後我可以2所以我就打錯了 不好意思txt的第二個所以就找到資對不對好我們今天只有學兩個現在這一頁只有學兩個知識length 跟 index of好那我們融合這兩個知識好不好我們可以得到什麼呢要融合嗎融合大家有好 等一下再講好好的好 在這邊呢我們看一下這個文字就是這個叫做 last index of那 last index of 的做法是從原本我們找 index of都是從左邊找到右邊那 last index of是從右邊找到左邊那這邊呢我們看到課那在這個字串裡面有兩個課對不對一個課是前面上課的課另外一個課是課程的課那這個的 last index of會從右邊開始找找到這一個可是他還是從前面開始數所以012345678ok那我們可以接受嗎012345678 課或是我直接數字5我是0嘛對不對1012345678因為他從右邊算過他是從右邊找到的第一個課好那就是這邊可是他的 index 還是所以這個是第八個好那我們拋拋看扣然後我們要把這個8先拿掉好是8ok沒有什麼問題好的那這邊呢我們要找呃字那這個我們會用到一個東西叫做regular expression那regular expression大家可以有更多的語法大家可以上網去查regular expression要怎麼寫那這邊主要我們要找的是數字字母底線的字那在這邊應該就是這個 j就是英文字好那我們看一下這份 code 跑起來的樣子然後把 console log他找到11那我們可以看一下t x 1t然後11是什麼是 j他會找到是這樣子找過來找到是第11個是這個 j符合這個反斜線 w 的條件那 regular expression就是讓大家就是再去 google 再查更多就是怎麼樣使用 regular expression好再來我們要講到的是擷取文字那麼擷取文字呢比如說我今天想要擷取第二個到第五個那我現在擷取會是擷取到什麼我在資測會上課我是0嘛12是這個嘛資對不對23455到上嘛可是因為他這個是尾巴所以5他不會上就不會選到所以他只會選到資測會那你如果是用間隔來看這件事情其實會更清楚為什麼呢因為如果第0個是在我前面這一個那就是012是不是資前面對不對2345那這邊是不是剛好在會後面這裡所以他剛好就是資測會這三個好的那我們來拋拋看好這樣是不是就看到資測會那同時呢我記得是如果你只有塞一個的話他就直接把前面切掉slide2後面都還會留著ok好所以我們可以這樣來切一個字或是6的話就是資測會上這樣好的好再來我們要學的這個是substring那substring的語法跟slice不太一樣的事情是他們兩個共同的都是begin他index和start的都是找到最開始哪一個可是slice是說結束的你要知道結束的位置是5可是substring他是說我要切幾格所以這邊是切3格對不對我要資測會我要三個字所以這樣子所以他就是2跟3那我們來看看substringsub就是就是子的意思子字串的意思2然後3我在第二個這個index位置切了三個拿過來變一個子字串就可以取這個東西出來好的最後我們要來講替換應該是最後吧最後對最後我們來講替換字串內容replace那replace這邊呢我可以把這裡面的資測會換成是財團法人資訊工程測鏡會好的那我們先把這個text先拿來再來我們把console.log這個東西放進來那這個時候我們txt就變成是還是一樣為什麼呢因為replace沒有把原本的字串改掉喔我們剛印出來的時候replace只有這個東西他改了可是他是印出來對不對所以如果我們今天要replace他同時要改到原本的值這時候要多做一個動作就是我要txt等於replace這邊replace完的要回存回去好不好我們replace完我們回存回去這時候txt的值就改變了ok嗎原本我做replace只是說我先把他拿出來暫存然後輸出去可是我沒有改變原本的值我要把他用等於傳進去以後他才會改變原本的值好了最後這兩個最簡單一個是to uppercase一個是to lowercase那這個範例其實滿有趣的因為他有中英夾雜那這邊他只會去改變你英文的英文的小寫英文的大寫保持大寫小寫變成大寫那我們這邊去做txt.to uppercaseto uppercase不好意思to uppercase我要執行這個function要執行javascript就都變大寫了to uppercase要記得要加小括弧喔小括弧才會執行如果沒有加小括弧他是一個function那我們也可以把他全部轉換成小寫to uppercaseto lowercase有沒有原本的大寫j就變小寫了這是轉換成大寫和轉換成小寫本章的重點我們看到的就是string他可以的文字型的資料然後再來我們學會怎麼用反斜線來做跳脫字元還有一些常用的字行啊tab的做法再來我們學會用學會量就是字串的長度然後他的index of還有去搜尋用regular expression去搜尋再來我們可以用slice和substring來切就是我想要的子字串還有我可以用replace來把我的字串裡面的某些字換掉換成我想要的這就是字串第六章的部分