0

我有模式 TABLE *some_table* LARGE READ_ONLY LOTS_OF_OTHER_WORDS {

我想选择 LARGE READ_ONLY LOTS_OF_OTHER_WORDS

我想去掉 some_table 之后的所有单词,其中 some_table 每次都是不同的表名。我试过 (?<=TABLE\s(. ?)\s)。但是 (.*?) 似乎不起作用。

4

2 回答 2

0
  • 在要删除的单词之后总是有一个大括号吗?
  • some_table 名称总是一个单词名称吗?

如果是这样,我会使用:

TABLE\s?(\s*[^{]*?){

然后您需要替换第一组中的匹配项。

编辑:我忘记了不应该成为匹配部分的表名 - 更新的正则表达式:

TABLE\s*?\w+\s?([^{]*?){

说明:
- 查找字符串 TABLE
- 匹配第一个单词(并允许其前后有空格)\s*?\w+\s?
- 组:匹配所有不是大括号的内容([^{]*?)
- 匹配括号

于 2012-04-20T20:05:33.240 回答
0

是这个吗?

TABLE \w+ (.*)

http://regexr.com?30ncp

于 2012-04-20T16:45:51.423 回答