第十章 字串和正規表示式

2021-08-15 03:40:15 字數 3971 閱讀 6237

1、system.string類中的方法

方法

作用compare

比較字串的內容,考慮區域值背景

compareordinal

與compare一樣,但不考慮區域值背景

concat

把多個字串例項合併為乙個例項

copyto

從選定下標開始的特定數量字元複製到陣列的乙個全新例項中

format

格式化包含各種值的字串和如何格式化每個值的說明符

indexof

定位字串中第一次出現某個給定子字串或字元的位置

indexofany

定位字串中第一次出現某個字元或一組字元的位置

insert

把乙個字串例項插入到另乙個字串例項的指定索引處

join

合併字串陣列,建立乙個新字串

lastindexof

與indexof一樣,但定位最後一次出現的位置

lastindexofany

與indexofany一樣,但定位最後一次出現的位置

padleft

在字串的左側,通過新增指定的重複字元填充字串

padright

在字串的右側,通過新增指定的重複字元填充字串

replace

用另乙個字元或字串替換字串中給定的字元或子字串

split

在出現給定字元的地方,把字串拆分為乙個子字串陣列

substring

在字串中檢索給定位置的子字串

tolower

把字串轉換為小寫形式

toupper

把字串轉換為大寫形式

trim

刪除首尾的空白

2、string與stringbuilder

3、stringbuilder成員

建構函式

屬性 - length:指定包含字串的實際長度;

- capacity:指定字串在分配的記憶體中的最大長度;

- maxcapacity:對給定的stringbuilder例項的容量限制(唯讀屬性)。

4、stringbuilder類的方法

方法

說明給當前字串追加乙個字串

追加特定格式的字串

insert

在當前字串中插入乙個子字串

remove

從當前字串中刪除字元

replace

在當前字串中,用某個字元全部替換另乙個字元,或者用當前字串中的乙個子字串全部替換另乙個字串

tostring

返回當前強制轉換為system.string物件的字串

5、字串插值

c#6引入了給字串使用字首

的字串

插值。這

個字首允

許在花括

號中包含

佔位符來

引用**

的結果。

在現實中

,這只是

語法糖,

對於帶 字首的

字串插

值。這個

字首允許

在花括號

中包含佔

位符來引

用程式碼的

結果。在

現實中,

這只是語

法糖,對

於帶

字首的字串,編譯器建立string.format方法的呼叫。

string s1 =

"world";

string s2 = $"hello, ";

//第二句話等價於

string s2 =

string

.format("hello, ", s1);

把字串賦予formattablestring,就很容易得到翻譯過來的插值字串。這個型別定義了format屬性(返回得到的格式字串)、argumentcount屬性和方法getargument(返回值)。

> int x = 3, y = 4;

> formattablestring s = $"the result of + is ";

> writeline($"format:");

> for (int i = 0; i < s.argumentcount; i++)

> : ");

> }

>

程式執行結果:

- format:the result of + is

- argument 0: 3

- argument 1: 4

- argument 2: 7

6、日期時間和數字的格式

除了給佔位符使用字串格式之外,還可以根據資料型別使用特定的格式。在佔位符中,格式字串跟在表示式的後面,用冒號隔開。

//用大寫字母d表示長日期格式字串,用小寫字母d表示短日期字串

var day = new datetime();

writeline($"");

writeline($"");

標準數字格式字串

- n:用組分隔符顯示整數和小數;

- e:用指數表示;

- x:轉換為十六進製制;

- c:顯示貨幣;

- #:是數字佔位符,如果數字可用,就顯示數字;數字不可用,就不顯示;

- 0:是零佔位符,顯示相應的數字,如果數字不存在,就顯示零。

7、自定義字串格式

可以為自己的型別建立自定義格式字串。為此,需要實現介面iformattable。該介面定義了帶兩個引數的tostring方法:乙個是格式的字串引數,另乙個是iformatprovider引數。

8、正規表示式的功能

9、regex類(模式就是搜尋字串中的指定內容)

regex類的靜態方法matches()。這個方法的引數是一些輸入文字、乙個模式和從regexoptions列舉中提取的一組可選標誌。

static

void find1(string text)

}

10、表示式的寫法

11、正規表示式組合字元

正規表示式的乙個優秀特性就是可以把字元組合起來。在正規表示式模式中,可以把任何字元組合起來,像處理單個字元那樣處理它們。但是,要使用圓括號,得到的序列稱為一組。例如,模式(an)+定位任意重複出現的序列an。如果應用到」bananas came to europe late in the annals of history」上,就會從bananas中識別出anan。這裡沒有把其中乙個an作為匹配結果,因為匹配結果不能重複,如果有重疊,在預設情況下就選擇最長的匹配序列。

- url的格式是://

:, 例如:就可以使用下面的表示式:

- (http?):會識別http或https協議;

- (://):僅指定字元://;

- ([.\w]+):該表示式要麼是句點符號,要麼是用\w指定的任意字母數字字元。這些字元可以重複多次;

- ([\s:([\d])?):\s指定空白字元或冒號,內部組[\d]指定乙個數字,表示式指定前面的字元(數字)允許至少出現兩次但不超過5次。

第十章 正規表示式和JSON

正規表示式是乙個特殊的字串行,乙個字串是否與我們所設定的這樣的字串行,相匹配,快速檢索文字 實現一些替換文字的操作 內建函式優先選擇來解決字串的問題 re1 findall 正規表示式 資料 元字元與普通字元 字符集 字元 匹配某乙個字元,字元與字元之間是或的關係 概括字符集 數量級 表示前面的字元...

第十章 字串簡單操作(入門)

字串是python中特別常用的一種資料型別,用 或 來表示該型別是字串.通常字串不能進行數學操作,即使長得像數字也不行,下面請看例子 定義乙個字串變數 a hello,world a 2traceback most recent call last file line 1,in a 2typeerr...

正規表示式匹配字串

正規表示式用於字串處理 表單驗證等場合,實用高效。現將一些常用的表示式收集於此,以備不時之需。匹配中文字元的正規表示式 u4e00 u9fa5 評注 匹配中文還真是個頭疼的事,有了這個表示式就好辦了 匹配雙位元組字元 包括漢字在內 x00 xff 評注 可以用來計算字串的長度 乙個雙位元組字元長度計...