C 常用字串處理

2021-07-09 12:08:26 字數 4780 閱讀 4145

我們在編碼的過程中,常常需要處理一些字串。例如對字串的一些拆分,字串中字元的替代,以及剪下;又例如,需要對字串進行進製之間的轉換,格式的的約束等等。這些經常用到的方法整理如下:

convert.tostring(...)

1.十進位制轉二進位制

int d = 10;  

//十進位制轉二進位制字串

console.writeline(convert.tostring(d,2));

//輸出: 1010

2.十進位制轉十六進製制字串  

int d = 10;

//十進位制轉十六進製制字串

console.writeline(convert.tostring(d, 16));

//輸出: a

3. 二進位制字串轉十進位制數 

//二進位制字串轉十進位制數  

string bin = "1010";

console.writeline(convert.toint32(bin,2));

//輸出: 10

4.二進位制轉十六進製制

//二進位制字串轉十六進製制數  

string bin2 = "1010";

console.writeline(string.format("",convert.toint32(bin2,2)));

//輸出: a

5.十六進製制轉二進位制

//十六進製制轉二進位制字串  

console.writeline(convert.tostring(0xa,2));

//輸出: 1010

6.十六進製制轉十進位制數  

//十六進製制轉十進位制數  

console.writeline(convert.tostring(0xa,10));

//輸出: 10

7.字串左邊補零

int dn=11;

console.writeline(convert.tostring(dn, 16).padleft(2,'0'));

//輸出:0b
8.字串替換

string strt = "hello world";

strt = strt.replace("l", "l");

console.writeline("new string is " + strt);

//輸出結果:hello world
9.字串剪下

string strt = "hello world";

strt = strt.substring(strt.indexof("e")+1);

console.writeline("new2 string is " + strt);

10.字串拆分

string str2="1,2,3,4.5.6.7";

string strm=str2.split(new char[2]);

foreach (string var in strm)

//輸出結果是:
1 2 3 4 5 6 7
11.字串拆分,複雜一點的,用單詞分割的那種

string str3 = "hellomrzhanghellomisslihellomrzhao";

string strname = system.text.regularexpressions.regex.split(str3, "hello", system.text.regularexpressions.regexoptions.ignorecase);

foreach (string var in strname)

//輸出結果:mrzhang  missli mrzhao

12.字串替換,複雜一點的,一次可以替換多個 

string s = regex.replace("abracadabra", "abra", "zzzz");
console.write(s);
//結果:zzzzcadzzzz

13.去掉字串空格 

string   tt=" aaa "; 

tt=tt.trim(); 去字串首尾空格的函式

tt=tt.trimend(); 去掉字串尾空格

tt=tt.trimstart(); 去掉字串首空格

14.字串轉字元陣列,方法1

string str1 = "fafaaf";

string str2;

//字串的複製,要用靜態方法string.copy(string source)

str2 = string.copy(str1);

//將字串轉換為字元陣列的方法1:str.copyto(int sourceindex, char destination, int destinationindex, int count)

char chaarr = ;

str2.copyto(0, chaarr, 0, 6);

console.writeline(str2);

foreach (char mychar in chaarr)

console.writeline();

15.字串轉字元陣列,方法2

//將字串轉換為字元陣列的方法2:tochararray()  

char chararr2 = new char[6];

chararr2 = str2.tochararray();

foreach (char mychar1 in chararr2)

16.字串轉字元陣列,方法3   getbytes()

private static void teststringbytes()

console.writeline("第1種編碼"+t1.tostring());

foreach (byte b in b2)

console.writeline("第2種編碼" + t2.tostring());

console.writeline();

}

17.字元陣列轉化為字串

byte bs = ;

string ss = system.text.encoding.ascii.getstring(bs);

console.writeline(ss);

//輸出結果是:abcdef
18.科學計數法轉化為 普通的計數法1

double a = 7e-7;

string b = a.tostring("0.0000000000");//括號裡面的是字串格式

console.writeline("new is "+b);

19.科學計數法轉化為普通的計數法2

//1.字串值中包含e等科學計數法,比如12e-2,///需要進行轉化為普通數值0.12,

//2.轉化函式如下:

//**如下:

private decimal changedatatod(string strdata)

return ddata;

}// 3.呼叫的時候直接呼叫changedatad(strtex//t)

// 4.執行後就是0.12.

20.字串轉化為數值型別,parse 方法

//字串資料轉換為數值型使用pares()方法

//字串轉換為整型用int.parse()

string str="13";

int number=int.parse(str);

//字串轉換為雙精度浮點型 double.parse()string

string str="14";

double number =double.parse(str);

字串轉換為單精度浮點型 float.parse(string)

string str="15";

float number=float.parse(str);

//不是認識字串都可以轉換為數值型資料,只有能夠表示成數字的字串才可以進行轉換,例如名字「張三」,轉換成數字沒有可以符合的表示式,就不能實現轉換

//注意 pares() 括號中的引數只能是字串,不能為其他資料型別。

// 注意
// int.tryparse(str) 意思 嘗試將非int型別資料轉換成int型別資料,轉換成功返回true,否則返回false
21.關於 parse 與convert的比較

區別是:

convert需要引數是obj型別的
parse需要引數string 型別的

C語言常用字串處理

字串 字串是由零個或者多個字元組成的有限序列 子串 字串中任意個連續的字元組成的子串行,並規定空串是任意串的子串,字串本身也是子串之一 abcdefg abc 就是其子串,但是 ade 不屬於子串範圍。子串行 不要求字元連續,但是其順序與其在主串中相一致 上例中,abc 與 ade 都屬於子串行範圍...

mysql常用字串 MYSQL常用字串函式寶典

mysql常用字串函式 想更進一步加強自己在查詢語句方面的能力,需要掌握常用函式。字串函式 1 concat s1,s2,sn 將s1,s2,sn串聯成乙個字串。exp root test 14 43 desc t1 field type null key default extra id int ...

常用字串處理整理

今天遇到這樣乙個問題,統計字串中字元的個數。寫了乙個演算法基本實現了這個功能,只是不知是否有效能更高的演算法。感興趣的一起試試。方法比較簡單,就不寫注釋了,相信大家能夠看懂。code splitstr 1.aa 2.bb 3.cc 4.dd 5.ee 6.ff 7.dd 8.ee 9.ff priv...