正则表达式删除多余的空格
Regular expression removes extra whitespaces
我有一个字符串,我想在其中删除任何特殊字符,例如 ~ 或 * 等
我使用的是正则表达式“[ ](?=[ ])|[^-_,A-Za-z0-9 ]+”
然后我注意到它连同特殊字符一起删除了多余的白色space。例如,如果一个字符串在大于 1 的单词之间有 space,它会将其更改为单个 space。例如,如果一个字符串是
~ my test 123 456
我想返回 my test 123 456
但我得到的是 my test 123 456
所以我改了[ ](?=[ ])|[^-_,A-Za-z0-9 ]+ to [ ][^-_,A-Za-z0-9 ]+
但现在 ~ 没有从字符串中删除。我得到 ~ my test 123 456
我使用的代码如下:
line = Regex.Replace(line, "[ ][^-_A-Za-z0-9 ]+", "").Trim()
你可以试试这个,
line = Regex.Replace(line, @"[^-,\w ]", "").Trim()
我有一个字符串,我想在其中删除任何特殊字符,例如 ~ 或 * 等
我使用的是正则表达式“[ ](?=[ ])|[^-_,A-Za-z0-9 ]+”
然后我注意到它连同特殊字符一起删除了多余的白色space。例如,如果一个字符串在大于 1 的单词之间有 space,它会将其更改为单个 space。例如,如果一个字符串是
~ my test 123 456
我想返回 my test 123 456
但我得到的是 my test 123 456
所以我改了[ ](?=[ ])|[^-_,A-Za-z0-9 ]+ to [ ][^-_,A-Za-z0-9 ]+
但现在 ~ 没有从字符串中删除。我得到 ~ my test 123 456
我使用的代码如下:
line = Regex.Replace(line, "[ ][^-_A-Za-z0-9 ]+", "").Trim()
你可以试试这个,
line = Regex.Replace(line, @"[^-,\w ]", "").Trim()