什么是正则表达式,它只允许我使用字母,特殊字符和空格???
这是我现在的一个不起作用:
Regex r1 = new Regex("^[a-zA-Z~@#$^*()_+=[]{}|\\,.?: -]*$");
答案 0 :(得分:0)
让inputStr
为输入字符串,它是字母数字和特殊字符的组合。
即,
string inputStr="asdfsf$@#%# @$%#$^%$^412545SDF S4658#$%3453453$%#$53"
您将使用以下代码获取数字空闲字符串:
string result= Regex.Replace(inputStr,@"\d", "");
答案 1 :(得分:0)
这将删除字符串中的任何数字:
struct Number: Equatable {
var x: Int
var y: Int
}
func ==(lhs: Number, rhs: Number) -> Bool {
return lhs.x == rhs.x && lhs.y == rhs.y
}
let dicOfStringStringAr1: [String : [Number]] = ["key1" : [Number(x: 1, y: 2), Number(x: 1, y: 2)]]
let dicOfStringStringAr2: [String : [Number]] = ["key1" : [Number(x: 1, y: 2), Number(x: 1, y: 2)]]
if dicOfStringStringAr1 == dicOfStringStringAr2 {
print("Dictionary of String Array") // "Dictionary of String Array"
}
输出:
string pattern = @"\d";
string str = "sjfk jsdkj f236470924824$^^*)()";
string output = Regex.Replace(str, pattern, "", RegexOptions.Singleline);
Console.WriteLine(output);
这将返回按字母数字分割的字符串列表,不包括数字:
sjfk jsdkj f$^^*)()
输出:
string pattern2 = @"([^\d]+)";
MatchCollection ms= Regex.Matches(str, pattern2, RegexOptions.Singleline);
foreach(Match m in ms)
{
Console.WriteLine(m.Value);
}
这将返回按字母分割的字符串列表,包括数字:
sjfk jsdkj f
$^^*)()
输出:
string pattern3 = @"([^\d]+)";
string[] strs= Regex.Split(str, pattern3, RegexOptions.Singleline);
foreach (string s in strs)
{
Console.WriteLine(s);
}