Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
.net 正则表达式识别单词“quot;“主键”;在.sql文件中_.net_Regex - Fatal编程技术网

.net 正则表达式识别单词“quot;“主键”;在.sql文件中

.net 正则表达式识别单词“quot;“主键”;在.sql文件中,.net,regex,.net,Regex,我正在尝试构建regex以在.sql文件中查找word主键。。。。就像有一个包含多个CREATETABLE{}脚本的文件一样。我只想在创建表时检查是否设置了主键 例如: CREATE TABLE { ..... ..... PRIMARY KEY ... } CREATE TABLE { ..... ..... ... } CREATE TABLE { ..... ..... PRIMARY KEY ... } 这里第二个创建表不包含主键。。 所以我想构建正则表达式来查找是否定义了主键。。。

我正在尝试构建regex以在.sql文件中查找word主键。。。。就像有一个包含多个CREATETABLE{}脚本的文件一样。我只想在创建表时检查是否设置了主键

例如:

CREATE TABLE
{
.....
.....
PRIMARY KEY
...
}
CREATE TABLE
{
.....
.....
...
}
CREATE TABLE
{
.....
.....
PRIMARY KEY
...
}
这里第二个创建表不包含主键。。 所以我想构建正则表达式来查找是否定义了主键。。。
我正在使用.net中的ReadToEnd函数扫描文件,然后想在其上应用正则表达式进行匹配。

我不知道.net,但我认为仅使用一个正则表达式是无法做到这一点的。
我将遍历该文件,用一个正则表达式检查是否有一个新的创建表{启动,如果是,检查在下一个创建表之前是否有主键{.

你到底想做什么?一天结束时你的目标是什么?例如:你正在验证
CREATE TABLE
语句,如果没有定义主键,就要出错吗?试图提取一些有用的数据供以后使用吗?其他什么?是的,实际上我试图在CREATE TABLE中没有定义主键的情况下引发一个错误…所以如果在ny CREATE TABLE block如果主键没有定义它应该是一个错误…你不需要一个正则表达式,一个简单的子字符串匹配就足够了。事实上,我正在寻找正则表达式匹配,因为我正在通过我的应用程序来做。所以,相同的正则表达式将很有用。嗯,正则表达式匹配主键并创建表并不难。这里:*PPRIMARY.KEY.*这与行中任意位置的主键匹配,.*CREATE.TABLE.*在这里相同。但我认为这不足以让它正常工作。