自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Bash 基礎(chǔ)知識系列 #6:處理字符串操作

系統(tǒng) Linux
但 Bash Shell 有所不同。字符串沒有單獨的數(shù)據(jù)類型。這里一切都是變量。

在大多數(shù)編程語言中,你都會找到字符串?dāng)?shù)據(jù)類型。字符串基本上是一組字符。

但 Bash Shell 有所不同。字符串沒有單獨的數(shù)據(jù)類型。這里一切都是變量。

但這并不意味著你不能像在 C 和其他編程語言中那樣處理字符串。

在 Bash Shell 中可以查找子字符串、替換子字符串、連接字符串以及更多字符串操作。

在 Bash 基礎(chǔ)知識系列的這一部分中,你將學(xué)習(xí)基本的字符串操作。

在 Bash 中獲取字符串長度

讓我們從最簡單的選項開始。也就是獲取字符串的長度。這很簡單:

${#string}

讓我們在示例中使用它。

Example of getting string length in bashExample of getting string length in bash

正如你所看到的,第二個示例中有兩個單詞,但由于它用引號引起來,因此它被視為單個單詞。連空格都算作一個字符。

在 Bash 中連接字符串

用技術(shù)術(shù)語來說是字符串 連接concatenation,這是 Bash 中最簡單的字符串操作之一。

你只需像這樣一個接一個地使用字符串變量:

str3=$str1$str2

還能比這更簡單嗎?我覺得不能。

讓我們看一個例子。這是我的示例腳本,名為 join.sh

#!/bin/bash
read -p "Enter first string: " str1
read -p "Enter second string: " str2
joined=$str1$str2
echo "The joined string is: $joined"

以下是該腳本的運行示例:

Join two strings in bashJoin two strings in bash

在 Bash 中提取子字符串

假設(shè)你有一個包含多個字符的大字符串,并且你想要提取其中的一部分。

要提取子字符串,需要指定主字符串、子字符串的起始位置和子字符串的長度,如下所示:

${string:$pos:$len}

?? 和數(shù)組一樣,字符串中的定位也是從 0 開始。

這是一個例子:

Extracting substring in bashExtracting substring in bash

即使你指定的子字符串長度大于字符串長度,它也只會到達字符串末尾。

替換 Bash 中的子字符串

假設(shè)你有一個大字符串,并且你想用另一個字符串替換其中的一部分。

在這種情況下,你可以使用這種語法:

${string/substr1/substr2}

? 只有第一次出現(xiàn)的子字符串才會以這種方式替換。如果要替換所有出現(xiàn)的地方,請使用 ${string//substr1/substr2}

這是一個例子:

Replace substring in bashReplace substring in bash

正如你在上面看到的,“good” 一詞被替換為 “best”。我將替換的字符串保存到同一字符串中以更改原始字符串。

?? 如果未找到子字符串,則不會替換任何內(nèi)容。它不會導(dǎo)致錯誤。

在 Bash 中刪除子字符串

我們來談?wù)剟h除子字符串。假設(shè)你要刪除字符串的一部分。在這種情況下,只需將子字符串提供給主字符串,如下所示:

${string/substring}

? 通過這種方式,僅刪除第一次出現(xiàn)的子字符串。如果要刪除所有出現(xiàn)的內(nèi)容,請使用 ${string//substr}

如果找到子字符串,則將從字符串中刪除它。

讓我們通過一個例子來看看。

Delete substring in bashDelete substring in bash

不用說,如果沒有找到子字符串,則不會刪除它。它不會導(dǎo)致錯誤。

??? 練習(xí)時間

現(xiàn)在是你通過簡單練習(xí)來實踐字符串操作的時候了。

練習(xí) 1:聲明一個字符串 “I am all wet”。現(xiàn)在通過用 “set” 替換單詞 “wet” 來更改此字符串。

練習(xí) 2:創(chuàng)建一個字符串,以 112-123-1234 格式保存電話號碼?,F(xiàn)在,你必須刪除所有 -。

這應(yīng)該會給你一些在 Bash 中使用字符串的不錯的練習(xí)。在下一章中,你將學(xué)習(xí)如何在 Bash 中使用 if-else 語句。敬請關(guān)注。

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2022-12-08 12:05:03

Bash字符串

2023-08-22 21:42:03

Bash函數(shù)

2023-08-11 15:46:40

BashIf Else 語句

2023-07-17 14:29:01

Bash算術(shù)運算

2023-07-20 15:37:50

Bash數(shù)組

2023-07-12 14:13:03

BashLinux

2023-08-21 12:31:41

BashForWhile

2023-07-15 18:19:47

Bash參數(shù)

2022-10-13 16:14:26

JavaScript字符串開發(fā)

2023-01-09 09:52:06

Bash字符串

2022-05-10 09:47:10

Bash字符串Linux

2024-11-27 15:49:46

字符串Python

2010-04-13 18:24:14

Unix操作系統(tǒng)

2023-06-19 11:30:19

bashshell

2010-05-24 16:20:32

IPv6隧道技術(shù)

2011-05-31 13:15:03

路由器CiscoIOS

2010-11-26 09:51:54

MySQL字符串

2022-11-25 07:53:26

bash腳本字符串

2021-01-23 12:47:19

MySQL數(shù)據(jù)庫Go語言

2010-04-07 15:59:29

Unix操作系統(tǒng)
點贊
收藏

51CTO技術(shù)棧公眾號