我是PL / SQL的新手,并尝试编写PL / SQL代码以实现text_warp函数。
我不认为这项工作很复杂,但是我对如何用特定的空格分隔行一无所知,例如:
我想换行以适合给定的行长。而且我的程序不会破坏工作。换句话说,在开始新行之前,它应尝试在一行中尽可能多地容纳单独的单词。
在这种情况下,我尝试使用内置函数substr和chr,但是,如果指定行的空间,我对如何自动进行下一行一无所知...(假设我尝试将其放入在上述情况下,每行10个空格)
ACCEPT p_text PROMPT 'Please enter your text : ';
ACCEPT p_line_length PROMPT 'Please enter your line length : ';
declare
my_text varchar2 (80):= '&p_text';
my_line_length number(80) := '&p_line_length';
miss_text_exception exception;
miss_line_exception exception;
VALUE_ERROR exception;
begin
if my_text is null THEN
raise miss_text_exception;
elsif my_line_length is null THEN
raise miss_line_exception;
else
DBMS_OUTPUT.PUT_LINE(INSTR(SUBSTR(url, pos + 4), '.'));
end if;
exception
when miss_text_exception then
DBMS_OUTPUT.PUT_LINE('please enter text you want');
when miss_line_exception then
DBMS_OUTPUT.PUT_LINE('please enter line length you want');
end;
/
这是我希望打印的内容:
1 2 3 4 5 6 7 8 9 0 (this is example space for each line I type in)
" h e l l o ,
w o r l d ! I
a m n e w t o
s q l ! "
任何建议都值得赞赏!