Tôi rất mới với RegEx - vì vậy ai đó có thể vui lòng giúp tôi tìm ra chính xác những gì đang xảy ra ở đây?RegEx - Định lượng {x, y} sau không có lỗi nào
tôi có mã này:
string regPattern = "*[~#%&*{}/<>?|\"-]+*";
string replacement = "";
Regex regExPattern = new Regex(regPattern);
Tuy nhiên, khi ứng dụng của tôi hits dòng regExPattern, tôi nhận được một ArgumentException - quantifier {x, y} sau lỗi gì cả.
Ai đó có thể trợ giúp?
EDIT: Tôi cần phải vượt qua mô hình này vào một vòng lặp foreach như sau:
if (paths.Contains(regPattern))
{
foreach (string files2 in paths)
{
try
{
string filenameOnly = Path.GetFileName(files2);
string pathOnly = Path.GetDirectoryName(files2);
string sanitizedFileName = regExPattern.Replace(filenameOnly, replacement);
string sanitized = Path.Combine(pathOnly, sanitizedFileName);
//write to streamwriter
System.IO.File.Move(files2, sanitized);
}
catch (Exception ex)
{
//write to streamwriter
}
}
}
else
{
//write to streamwriter
}
Làm thế nào để tôi xác định mô hình nếu nó đang được truyền vào vòng này?
Để cụ thể - mẫu tôi có trong mã có nghĩa là loại bỏ các ký tự không hợp lệ đó trong tên tệp. do đó tôi cần phải loại bỏ dấu sao, dấu ngã, dấu thăng, dấu ngoặc đơn, dấu ngoặc nhọn, v.v. đây có phải là mẫu chính xác không? – yeahumok