我有一些文件行,我必須從它作為字符串獲取第一個字符。正文是:...(spaces) UWORD (spaces) /* data */(spaces) UBYTE (spaces) /* data */....我必須從所有行中獲取“UWORD”和“UBYTE”等等,沒有任何空格或 /*data */while ((line = Readed.ReadLine()) != null){ if (line.Contains("data") ) { // DO WHAT? }}
1 回答

FFIVE
TA貢獻1797條經驗 獲得超6個贊
您可以將此拆分重載與StringSplitOptions.RemoveEmptyEntries. 它會:
根據數組中的字符串將字符串拆分為子字符串。
在這種情況下,用空格分割字符串。現在您只需要獲取第一個元素:
string input = @" UWORD /* data */ ";
string value = input.Split(new string[] {" "}, StringSplitOptions.RemoveEmptyEntries).First();
編輯:這看起來像您正在掃描代碼并檢索數據類型名稱。在這種情況下,您可能不僅有空格,還有制表符。如果是這種情況,只需在包含分隔符的字符串數組中包含制表符:
string value = input.Split(new string[] {" ", "\t"}, StringSplitOptions.RemoveEmptyEntries).First();
顯然也可以捕獲所有空白字符。這是做到這一點的訣竅:
string value = input.Split(new char[0], StringSplitOptions.RemoveEmptyEntries).First();
- 1 回答
- 0 關注
- 195 瀏覽
添加回答
舉報
0/150
提交
取消