c# - 如何制作正则表达式从文本中删除字符串?

标签 c# asp.net regex

我需要从文本中删除一个字符串。

这是文本示例:-

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/

相关文章:

c# - 如何在给定角度的情况下找到椭圆上的点

c# - WPF 应用程序中使用了哪些线程?

asp.net - 使asp.net 中的某些页面需要登录的最佳方法是什么?

c# - 使用 Entity Framework 连接到数据库时出现错误

c# - 使用 Network Solutions 托管电子邮件的 System.Net 邮件设置

javascript - 使用没有ajax的javascript调用C#代码隐藏方法

切换到非 SSL 时,通过 SSL 的 ASP.NET 登录不会持续存在

mysql - MySQL 中 IP 数值的正则表达式?

regex - 匹配正则表达式后选择下一行

Java PathMatcher 在 Windows 上无法正常工作