我正在使用 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/