[英]C# Use Regex to Remove everything inside brackets and the brackets themselves
我有一個字符串:
var schoolName = "University of Hawaii [Maui/Oahu/Kaui]";
我想刪除方括號內的所有內容以及方括號本身,以便該字符串僅輸出“夏威夷大學”。
我一直在尋找正確的正則表達式,但尚未找到解決方案:
var pattern = @"\[(.*?)\]";
var query = "University of Hawaii [Maui/Oahu/Kaui]";
var matches = Regex.Matches(query, pattern);
foreach (Match m in matches) {
Console.WriteLine(m.Groups[1]);
}
謝謝你的幫助!
你快到了。 您必須使用Replace方法:
var pattern = @" \[(.*?)\]";
var query = "University of Hawaii [Maui/Oahu/Kaui]";
Console.WriteLine(Regex.Replace(query, pattern, string.Empty));
僅使用\\[.*?\\]
即可匹配包括括號在內的所有內容。
由於我對C#不太熟悉,因此您可以將其替換為空字符串嗎?
您可以這樣做:
var pattern = @"\s\[.*\]";
var regex = new Regex(pattern);
var result = regex.Replace(query, "");
那這個呢:
var pattern = @"\[.*\]";
var query = "University of Hawaii [Maui/Oahu/Kaui]";
var result = Regex.Replace(query, pattern);
Console.WriteLine(result);
這是我用來完成這項工作的代碼:
var pattern = @"\[(.*?)\]";
var result = Regex.Replace(stringToSanitize, pattern, string.Empty);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.