[英]How to trim white space within Regex using c#
我有一個字符串,正在使用RegEx將字符串替換為特定模式。 基本上我想修剪命名組中的空白
例如:
myString1: substringof('test',Name)
myString2: substringof(' test ',Name)
myString3: substringof('test ',Name)
Expected output: Name.Contains(\"test\")
myString4: substringof(' test test ',Name)
myString5: substringof(' test test',Name)
myString6: substringof('test test ',Name)
Expected output: Name.Contains(\"test test\")
碼:
var replaceRegex = new Regex(substringof\\(\\s*'(?<text>[^']+'?[^']*)'\\s*,\\s*(?<pname>[\\w\\[\\]]+)\\s*\\)");
myString = replaceRegex.Replace(myString, "${pname}.Contains(\"${text}\")");
任何幫助將不勝感激。 提前致謝!!
使用string.Trim
,但是如果您堅持使用正則表達式:
[^\s.*](?<pname>\w.*)[^\s.*]
那不是空間,而是一個可以用空格分隔的“單詞”,而不是空間。
避免正則表達式的另一種有趣方法,並且如果要在單詞之間修剪空格,可以使用字符串拆分和連接:
var text = " name name "; // sample
var result = string.Join(" ", text.Split(new[] { ' ' }, StringSplitOptions.RemoveEmptyEntries));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.