例如我們有一個大型的數據庫包含大量的oracle軟件包,現在我們想查看特定表在源代碼中的抵抗力。源代碼存儲在user_source表中,我們所需的表被稱爲「公司」。如何通過使用'regexp'找到包含用戶來源所需表名的所有源代碼行
通常情況下,我想用:
select * from user_source
where upper(text) like '%COMPANY%'
這將返回一個包含「公司」所有的話,像
121 company cmy
14 company_id, idx_name %% end of coding
453 ;companyname
1253 from db.company.company_id where
989 using company, idx, db_name,
那麼如何使用正則表達式來解析,使這個結果更智能所有的源代碼行與一個有意義的表名匹配(意味着編譯器有table
)?
所以通常我們允許匹配字包含像.
;
,
''
""
但不_
任何人都可以做這項工作字符?
'like'支持字符串內的完整正則表達式嗎? –
@HippoMatrix - 我已經更新了我的答案,所以它會忽略標點符號;對不起,我最初錯過了。 –