我需要从文本中删除一个字符串。
这是文本示例:-
This is sample data. Remove me Check Type: TOU from text. This is sample data.
我一直在寻找的字符串是这样的:-
支票类型:TOU
- 检查类型: = 始终相同,包括冒号 (:)
- 那么总是一个空格
- TOU = 并不总是相同,它可以是任何东西,但它总是一个词。所以总是在寻找它直到下一个空间。
这是我正在尝试的代码,但是:(
var startIndex = Text.IndexOf("Check Type:");
var firstPart = Text.Substring(startIndex, Text.IndexOf(' '));
var startIndex1 = startIndex + firstPart.Length + 1;
var finaltext = Text.Substring(startIndex1, Text.IndexOf(' '));
最佳答案
正则表达式为:
@"Check Type: \w+ "
这将匹配文字检查类型:
,后跟一个空格,后跟一个或多个 word characters ,后跟一个空格。
例如:
var finalText = Regex.Replace(Text, @"Check Type: \w+ ", "");
这可以概括为通过用空格替换 \s
来接受任何类型的空白字符(包括制表符和换行符)。当它出现在字符串末尾时,您还可以通过使用 ?
:
@"Check\sType:\s\w+\s?"
关于c# - 如何制作正则表达式从文本中删除字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20431703/