我试图从电话号码中删除所有非数字字符。
因此,假设我们有以下格式的数字:“(123)456-7890”。
Regex.Replace(phone, @"[ -()]", string.Empty)
留下短划线。与()相同的是转义(“\(\)”)。
这个
Regex.Replace(phone, @"[() -]", string.Empty)
虽然有效。
我以为[]中的字符顺序不起作用?实际上,如果切换空格和短划线,我会得到相同的结果。但是括号必须首先起作用吗?
最佳答案
-
可用于声明范围,例如[a-z]
。您需要对其进行转义:[ \-()]
。
例外是,如果将破折号放在字符组的末尾,则其唯一含义可以是文字-
。
关于regex - 正则表达式:订单重要吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11348433/