[英]Replace regex Match with other value
我有这样的查询:
select * from tdirectories where tdirectories.parent in
(
select max(tdirectories.directoryid) from tdirectories
where tdirectories.ntfsdrivedocuid in
(
select ntfsdrivedocuid from tntfsdrives, tntfsdrivedocu
where tntfsdrivedocu.ntfsdriveid = tntfsdrives.ntfsdriveid and tntfsdrives.hostid in
(
select tdocu.hostid from tdocu, tshares
here tdocu.docuid = tshares.docuid
and tdocu.archiv = 0
)
and tntfsdrivedocu.archiv = 0
)
and tdirectories.pathhash in (select tshares.pathhash from tshares )
)
我想做的是通过使用RegEx我想找到这一部分:
select max(tdirectories.directoryid)
max
可以是任何值。 我想找到它并删除,结果我将拥有
select tdirectories.directoryid
我创建的正则表达式如下所示:
Regex rgx = new Regex("(select\\s.+select)\\smax\\s*\\((?<VAR>[^)]+)\\)");
但这不能解决我的问题。 我想念什么?
您可以参加(免费模式):
select # select literally
\ # a space
max # max literally
\(([^)]+)\) # capture anything inside the parentheses
并使用第一组( $1
),请参阅regex101.com上的演示 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.