c# - 单个单词的正则表达式

标签 c# regex

我正在使用 Regex.Split 根据关键字“GO”拆分 SQL 脚本。我的问题是我似乎无法理解如何让 Regex 进行拆分。我的正则表达式也会在“GO”处拆分,即使它在 SQL 语句中也是如此:

Insert into  x(a,b) values(‘please go get some text’,’abc’)

但我只希望它根据关键字“GO”拆分。有什么建议吗?

编辑:我正在使用 C#。目前我的正则表达式很简单:

  foreach (string batch in Regex.Split(script, "\\bGO\\b", RegexOptions.IgnoreCase))
  {
    yield return batch;
  }

最佳答案

单独在一行上拆分 GO,例如:

foreach (string batch in Regex.Split(script, "^GO$\\n", RegexOptions.IgnoreCase | RegexOptions.Multiline))
{
    yield return batch;
}

根据脚本的来源,您可能需要将其更改为 "^GO$\\r\\n"

关于c# - 单个单词的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/634614/

相关文章:

c# - 编写对集合中的第一项具有特殊逻辑的循环的巧妙方法

用于用户名验证的正则表达式模式

MySQL REGEXP - 选择特定的数字和字符模式

php - 检查是否存在与正则表达式匹配的数组键

c# - 在 ViewModel 中存储信息或使用 IValueConverter

c# - 无法解析 DNS(有时?)

c# - 仅返回字符串中的数字 0-9

regex - 设计 : running pg_dump when tables are continuously created and dropped

c# - 如何从 ASP.NET Framework 运行 package.json 脚本

c# - 创建文件引用