替换或删除oracle存储过程中的多行文本 [英] Replace or remove mutliple lines of text in oracle stored procedure
本文介绍了替换或删除oracle存储过程中的多行文本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
任何人都可以使用replace或regex替换功能来帮助我替换或删除行集吗?查找和替换的字符串模式是什么
Could any one help me to repalce or remove set of lines using a replace or regex replace function,and what would be the string pattern to find and replace
行将从下面的文本替换
</properties>
<?xml version="1.0"?>
<properties>
文字
<COLLECT_PARALLELGRAMMAR1>global.grxml</COLLECT_PARALLELGRAMMAR1>
<COLLECT_INPUTMODES>voice dtmf</COLLECT_INPUTMODES>
<CONF_INPUTMODES>dtmf</CONF_INPUTMODES>
</ROW>
</properties>
<?xml version="1.0"?>
<properties>
<ROW>
<MODULE_NAME>main_menu_phone</MODULE_NAME>
<MODULE_DESCRIPTION>Main Menu for Customers with silver membership</MODULE_DESCRIPTION>
<MODULE_TYPE>phone</MODULE_TYPE>
推荐答案
如果它是纯文本文本,而不是 XML ,那么您可以简单地使用 REPLACE .
If it is plain text and not XML, then you could simply use REPLACE.
例如,
SQL> WITH DATA AS
2 (SELECT '
3 <COLLECT_PARALLELGRAMMAR1>global.grxml</COLLECT_PARALLELGRAMMAR1>
4 <COLLECT_INPUTMODES>voice dtmf</COLLECT_INPUTMODES>
5 <CONF_INPUTMODES>dtmf</CONF_INPUTMODES>
6 </ROW>
7 </properties>
8 <?xml version="1.0"?>
9 <properties>
10 <ROW>
11 <MODULE_NAME>main_menu_phone</MODULE_NAME>
12 <MODULE_DESCRIPTION>Main Menu for Customers with silver membership</MODULE_DESCRIPTION>
13 <MODULE_TYPE>phone</MODULE_TYPE>' str
14 FROM dual
15 )
16 SELECT REPLACE(str, '</properties>
17 <?xml version="1.0"?>
18 <properties>', '') new_str
19 FROM data;
NEW_STR
--------------------------------------------------------------------------------------------
<COLLECT_PARALLELGRAMMAR1>global.grxml</COLLECT_PARALLELGRAMMAR1>
<COLLECT_INPUTMODES>voice dtmf</COLLECT_INPUTMODES>
<CONF_INPUTMODES>dtmf</CONF_INPUTMODES>
</ROW>
<ROW>
<MODULE_NAME>main_menu_phone</MODULE_NAME>
<MODULE_DESCRIPTION>Main Menu for Customers with silver membership</MODULE_DESCRIPTION>
<MODULE_TYPE>phone</MODULE_TYPE>
这篇关于替换或删除oracle存储过程中的多行文本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文