我不得不翻譯,如果在一個正則表達式語句,這樣我們就可以使用它在整個字符串翻譯這個if語句中的正則表達式
if (buffer[i] < 32 && !(buffer[i] == '\t' || buffer[i] == '\r' || buffer[i] == '\n'))
buffer[i] = ' ';
,我做到了做這個
return Regex.Replace(base.ReadLine(), "[\0-\x08\x0B\x0C\x0E-\x1F]", " ");
以下
但是我不喜歡它的外觀,是否有一種正則表達式可以完成我在if語句中做的同樣的事情? Basicly
[\0-\x1f]~[\t\r\b]
凡~
會去表示「排除以下」的東西(它不必是這個確切的語法,我只是想知道,如果有這樣的事?)
是的,但[^ \ t \ r \ B]將匹配除3中的所有字符,我只希望它值32下的字符匹配期望那些3. –
@Scott,您需要使用結合你的其他表情。儘管如此,我仍然覺得你可能會在這裏看到一個負面的後臺解決方案。你可以發佈你的示例文本,以便我可以嘗試更多? – Mrchief
請看第一個代碼塊中的if語句,它顯示了您需要遵循的確切規則,但是我已經得到了答案,它是'(?![\ t \ r \ n])[\ x00- \ x1F]'使用負向預測 –