我想用C++中的空格替換除字母,數字和句點之外的所有內容。在C++中結合正則表達式
任何人都可以請給我一個正則表達式在c + +,我可以使用?
我到目前爲止使用的是[^[:alnum:]]
,但只適用於字母和數字。
謝謝!
我想用C++中的空格替換除字母,數字和句點之外的所有內容。在C++中結合正則表達式
任何人都可以請給我一個正則表達式在c + +,我可以使用?
我到目前爲止使用的是[^[:alnum:]]
,但只適用於字母和數字。
謝謝!
std::replace_if(line.begin(), line.end(),
[](char ch){ return !isalnum(ch) && ch != '.'; }, ' ');
無需爭論逃逸。
非常感謝!這工作。 –
我不是一個C++的人,但你可以嘗試添加點的正則表達式:
[^[:alnum:].]
一種替代方案:
[^a-zA-Z0-9.]
我認爲Gayathri Jeyaram想用白色空間(可能是空格)替換所有不是(字母數字或點)的,我不確定是否需要包含'\ s'。 –
嗨,這沒有奏效。 –
'除了字母,數字和句點與空格... ...你能告訴我們一個例子嗎? –
我認爲你只需要給你的角色類添加一段時間:'[^ [:alnum:]。]' – Galik
@Galik小心點,這個點需要逃過AFAIK。 –