こんにちは、テキストを解析して抽出しようとしている SQL コードがあります。
CREATE OR REPLACE VIEW the_view_name as
前後のスペースを含まないREPLACE VIEW
と の間のテキストが必要です。AS
現時点では、/REPLACE\s*VIEW(.*?)\s*AS/gi
.
ありがとう
これをやってみてください:
echo 'CREATE OR REPLACE VIEW the_view_name as' |
perl -lne '/replace\s+view\s+(.*?)\s+as\b/i && print "[$1]"'
[the_view_name]
あなたのケースでもこの正規表現を使用できます:
/replace\s+view\s+(\S+)\s+as\b/i
\S : Character class for non whitespace
現在、VIEW の後にスペースがありません。スペース以外のすべてが必要な場合は、キャプチャ グループを にする必要があります。これにより([^\s]*)
、スペースまですべてが収集されます。